-c
编译生成目标文件(Relocatable),详见“main
函数和启动例程”一节。
-Dmacro[=defn]
定义一个宏,详见“条件预处理指示”一节。
-E
只做预处理而不编译,cpp
命令也可以达到同样的效果,详见“函数式宏定义”一节。
-g
在生成的目标文件中添加调试信息,所谓调试信息就是源代码和指令之间的对应关系,在gdb
调试和objdump
反汇编时要用到这些信息,详见“单步执行和跟踪函数调用”一节。
-Idir
dir
是头文件所在的目录,详见“头文件”一节。
-Ldir
dir
是库文件所在的目录,详见“静态库”一节。
-M
和-MM
输出“.o
文件: .c
文件 .h
文件”这种形式的Makefile规则,-MM
的输出不包括系统头文件,详见“自动处理头文件的依赖关系”一节。
-o outfile
outfile
输出文件的文件名,详见“main
函数和启动例程”一节。
-O?
各种编译优化选项,详见“内联函数”一节。
-print-search-dirs
打印库文件的默认搜索路径,详见“静态库”一节。
-S
编译生成汇编代码,详见“main
函数和启动例程”一节。
-v
打印详细的编译链接过程,详见“main
函数和启动例程”一节。
-Wall
打印所有的警告信息,详见“第一个程序”一节。
-Wl,options
options
是传递给链接器的选项,详见“共享库”一节。