gcc的工作流程:
1、预处理:cpp预处理器,去掉注释,展开头文件,宏替换
gcc -E test.c -o test.i
2、编译:gcc,将源代码文件编译成汇编语言代码
gcc -S test.i -o test.s
3、汇编:as,将汇编语言代码编译成了二进制文件(目标代码)
gcc -c test.s -o test.o
4、链接:ld,链接test.c代码中调用的库函数
gcc -o test test.o
gcc的常用参数:
-v 查看gcc版本号,-version也可以
-E 生成预处理文件
-S 生成汇编文件
-c 只编译,生成 .o文件,通常称为目标文件
-I(大i) 指定头文件所在的路径
-L 指定库文件所在的路径
-l(小L) 指定库的名字
-o 指定生成的目标文件的名字
-g 包含调试信息,使用gdb调试需要添加-g参数
-On n=0~3 编译优化,n越大优化得越多
-Wall 提示更多警告信息
-D 编译时定义宏