GCC 编译器在编译一个C语言程序时需要经过以下 4 步:
- 将C语言源程序预处理,生成
.i
文件。 - 预处理后的.i文件编译成为汇编语言,生成
.s
文件。 - 将汇编语言文件经过汇编,生成目标文件
.o
文件。 - 将各个模块的
.o
文件链接起来生成一个可执行程序文件。
GCC 编译流程如下图所示:
.i
文件、.s
文件、.o
文件可以认为是中间文件或临时文件,如果使用 GCC 一次性完成C语言程序的编译,那么只能看到最终的可执行文件,这些中间文件都是看不到的,因为 GCC 已经经它们删除了。
当然,可以使用 GCC 选项看到这些中间文件,下节我们会讲解 GCC 选项。
linux下使用gcc命令编译代码
gcc命令提供了非常多的命令选项,但并不是所有都要熟悉.初学时掌握几个常用的就可以了,到后面再慢慢学习其他命令选项.
一,常用编译命令选项
假设源程序文件名为test.c
1.无选项编译链接
用法: #gcc test.c
作用: 将test.c预处理 汇编 编译 并链接形成可执行文件。这里未指定输出文件,默认输出为a.out 编译成功后可以看到生成了一个a.out的文件.在命令行输入./aout 执行程序 。 ./表示在当前目录, a.out为可执行程序文件名
2.选项 -o
用法: #gcc test.c -o test
作用: 将test.c预处理 汇编 编译并链接形成可执行文件test 。 -o选项用来指定输出文件的文件名。输入./test执行程序
3.选项 -E
转: http://c.biancheng.net/view/663.html
https://wenku.baidu.com/view/7ae93b68a45177232f60a2c6.html
原文地址:https://www.cnblogs.com/fps2tao/p/10935817.html
时间: 2024-09-29 19:42:49