具体步骤如下:
1、编译。
由.c文件生成.o文件,写作:
gcc a.c -o a.o -c这个命令可以将a.c编译成a.o。
如果存在多个文件,可以逐个编译,即a.c
b.c...
生成a.o
b.o...等。
2、链接。
由.o文件生成可执行文件,写作:
gcc a.o b.o c.o -o a.out这个命令将a.o
b.o
c.o三个目标文件,生成可执行文件a.out。
3、执行。
调用命令:
./a.out即可执行生成的可执行文件a.out。
4、注意事项:
(1)
当文件较少时,可以省略目标文件步骤,编译链接一步执行,如:
gcc a.c b.c c.c -o a.out(2)
提供的示例为最基础的编译功能,在实际应用中gcc有很丰富的编译选项,根据需求进行添加。
(3)
当项目包含文件较多时,可以使用makefile进行管理。
c语言编译器的工作原理都差不多的。一般来说分为四个阶断;1、预处理阶断,主要是文本替换 *** 作。有预处理器完成。
2、编译阶断,将C源码生成汇编代码,这个是有C语言编译器来完成的,默认linux下是cc。
3、汇编阶断,将汇编代码,生成相应的可执行体,即二进制文件。
这个过程都可以自己通过给gcc加入参数来详细的获取这些过程的,具体可以参考:http://jingyan.baidu.com/article/03b2f78c1d6ede5ea237aed7.html
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)