姓名:曾国强
学号: 19021210984
【inverder guide】gcc(GNUcompilercollection,GNU编译器工具包)是由GNU开发的编程语言翻译器。 GNU编译器工具包包含c、c、Objective-C、Fortran、Java、Ada和Go语言的前端,以及这些语言的库(如libstdc和libgcj )。 )
【嵌入感动人的鱼】
一、GCC程序的编译过程大致可分为四个阶段
1、预处理(预处理) )
2、编译(Compiling )
3、装配(装配)
4、链接。
二. GCC命令的一般选项
-E )预处理文件. I的生成(头文件和宏展开) () ) ) ) ) ) ) ) ) )。
-S :编译为程序集文件. s
-c )合并处理,生成机器码(可执行文件).o
o :指定输出文件名
-g :生成调试代码
-I :指定搜索头文件的第一个目录
-L :指定搜索库文件的第一个目录
-Wall:打印所有警告消息
三. GCC命令的编译过程
例如,hello.c文件的编译过程
#包含
int main () )
{
打印(hello world! n ';
返回0;
}
1、生成预处理文件hello.i
gcc -E hello.c
在此过程中,gcc编译器将hello.c头文件插入到文件中,然后展开hello.c宏。
2、编译汇编代码文件hello.s
gcc -S hello.i
gcc生成汇编代码后停止。
3、将汇编代码文件编译为目标文件hello.o
gcc -c hello.s
4、连接
gcc hello.o -o hello