文件扩展名
拓展名 | 类型 |
---|
.c | C语言源代码 |
.cc .cpp | c++源代码 |
.i | 预处理后的c源代码 |
.ii | 预处理后的c++源代码 |
.s .S | 汇编语言代码 |
.o | 编译后的目标代码 |
.a .so | 链接库代码(静态/动态) |
GCC编译器的指令
文件输出指令
-o FILE :指定输出的文件名
-E :预处理(.i)
-S :编译为汇编(.s)
-c :输出目标代码(.o)
-g :编译成包含调试信息的可执行文件
-ggdb :编译成包含gdb调试信息的可执行文件
链接指令
-IDIR :将DIR加入包含文件搜索目录
-LDIR :将DIR加入库文件搜索目录
-lFOO :链接名为libFOO的函数库
-static :强制使用静态链接
编译选项
-O :优化编译过的代码
-ON :N越高等级越高
-DFOO=VAL :宏定义FOO的值为VAL
-ansi :使用C99的语法
警告错误
-pedantic :严格遵循ANSI的语法并产生
-Wcomment :注释嵌套警告
-Wuninitialized :auto变量未初始化警告
-Wmissing-declarations :全局函数未调用警告
-Winline :函数不能被内联警告