首先gcc是ubutnu下默认安装的。装gdb:
sudo apt-get install gdb
然后再装gvim:
sudo apt-get install gvim
于是我们可以编写一个hello world程序。
新建文件my.h
里面写
int b=8;
再新建一个my.h,里面写:
int add(int a,int b);
再新建一个my.c,里面写
int add(int a,int b){
return a+b;
}
再新建一个test.c,里面写
#include <stdio.h>
#include "my.h" //这里你也可以用extern int add(int ,int) 来代替
int main(){
printf("%d\n",add(2,3));
return 0;
}
接着写makefile,在同目录下(注意gcc前面应当是一个tab键)
test:my.o my.o test.o
gcc my.o test.o -o test
my.o:my.c
gcc -c my.c -o my.o
test.o:test.c my.h
gcc -c test.c -o test.o
里面的具体的约束规则我就不多说了。注意,这里如果你在gcc后面不加任何参数的话,会默认你要生成的是可执行文件,就算你指定目标后缀名是.o但是这个.o竟然是可执行文件。
然后在命令行上写 make test就可以了。
如果要调试的话
只要修还makefile为
test:my.o test.o
gcc -g test.c my.c my.h -o test
即可。
用gdb ./test,然后b 3,r,print,step来调试
具体讲一下细节
如果有一段c代码test.c:
#include <stdio.h>
int add(int,int);
int main(){
printf("%d\n",add(2,3));
return 0;
}
你可以用gcc -E test.c -o test.i
gcc -S test.i -o test.s
as test.s -o test.o
gcc test.o -o test
你可以发现在执行最后一条语句的时候出错了。可见在做函数连接的时候是在最后连接的时候做的。
而如果有一段代码是,
#include <stdio.h>
int add(int,int);
int main(){
dasdasddasadsasd
printf("%d\n",add(2,3));
return 0;
}
中间加了一串莫名其妙的字符,则会在生成test.s的时候出错。这里是很耐人寻味的。
分享到:
相关推荐
android源码环境搭建,linux环境搭建,ubuntu10.04配置手册.pdf+Android SDK 开发指南.pdf.rar
android2.2源码编译-Ubuntu10.04 (X86) + android2.2 + JDK1.6android2.2源码编译-Ubuntu10.04 (X86) + android2.2 + JDK1.6android2.2源码编译-Ubuntu10.04 (X86) + android2.2 + JDK1.6
#dpkg -i language-pack-zh-hans_1%3a10.04+20100421_all.deb language-pack-zh-hans-base_1%3a10.04+20100421_all.deb language-pack-gnome-zh-hans-base_1%3a10.04+20100421_all.deb language-pack-gnome-zh-hans_...
Ubuntu10.04下默认的GCC版本是 GCC 4.4.1,而大多时候,我们需要使用GCC4.1.2,所以需要自己安装低版本的 GCC 4.1.2。不过我尝试过,安装版 本为4.1的GCC,结果最终版本为4.1.3的,好像也可以用,,,好了废话少说,...
官方的chrome 只支持12.04以上的版本,由于所需的库不同 ubuntu 10.04 只能用之前的版本
这是10。04LTS的离线汉化包,专给没办法连网的同志用的,希望能帮助到你们。。。。
Ubuntu 10.04完全版入门教程 包含Ubuntu安装,配置过程,以及shell编程等内容。 分两部分: Ubuntu 10.04完全版first part Ubuntu 10.04完全版second part
VM7安装Ubuntu 10.04系统 VM7安装Ubuntu 10.04系统
家里的老笔记本装了诸多新版Ubuntu均不稳定,最终还是装回了10.04,结果安装最新版的方式得到的最新版本已经不能兼容10.04了。于是上网找了Chrome稳定版本的历史版本,然后本地下载各种版本尝试安装,得到了最新可...
ubuntu10.04 安装 opencv2.2.0
Ubuntu 10.04 安装配置指南 本文档提供了一个详细的 Ubuntu 10.04 安装配置指南,涵盖了从准备安装到配置输入法的所有步骤。首先,用户需要下载 Ubuntu 光盘镜像文件,并校验其 MD5 值,然后备份数据,最后可以选择...
"Ubuntu 10.04 软件安装指南" 从标题和描述中,我们可以了解到这篇文章的主要内容是关于 Ubuntu 10.04 的软件安装和基本配置的指南。从标签中,我们可以看到这是一个文档类型的资源。 从部分内容中,我们可以看到...
本篇文章是对buntu10.04配置 nginx+php-fpm模式进行了详细的分析介绍,需要的朋友参考下
最近开始学习Linux操作系统,遇到了很多问题,走了不少弯路。 Linux的却比windows强大很多,但像我这样刚入门的,用起来却不那么顺手。就拿上网来说吧,我在网上查了...此方法只适用于Ubuntu10.04,低版本我没试过。
4月29日最新发布的Ubuntu10.04正式版,是有一个LTS长期支持的版本。
安装Ubuntu10.04全过程(图解)
介绍最新版本Ubuntu10.04的安装,配置,shell编程等内容,快速入门提高的资料。 分两卷: Ubuntu10.04入门教程01 Ubuntu10.04入门教程02
Ubuntu10.04 2440 嵌入式
一步一步教你如何子啊VM下安-ubuntu10.04的详细图文教程
主要介绍了关于嵌入式开发的环境配置 开发环境是Ubuntu 10.04LTS