gcc编译器常用选项
-C
只编译不链接,生成目标文件".O"
-S
只编译不汇编,生成汇编文件
-E
只进行预编译
-g
在可执行文件中包含标准调试信息,用于后期调试
**-ohyjuikl.;/’??.loi8u76hyngrftbm jom9hy867jumfile
将file文件指定为输出文件
-v
打印出编译器内部编译各过程的命令行信息和编译器的版本
-l dir
在头文件的搜索路径列表中添加dir路径
gcc编译器库选项
-static
进行静态编译,链接静态库,禁用动态库
-shared
1、生成动态库
2、进行动态编译,尽量链接动态库,如果没有匹配的动态库会链接同名的静态库
-L dir
在库的搜索路径上添加dir路径
-l name
链接名为libname.a的静态库或者名为libname.so的动态库
-f pic
生成使用相对地址的位置无关的目标代码,然后使用gcc 的-static选项从pic 目标文件生成动态库
gcc编译器警告和出错选项
-ansi
支持符合ansi标准的C程序
-pedantic
允许发出ansi标准所列出的全部警告信息
-pedantic-error
允许发出ansi标准所列出的全部错误信息
-w
关闭所有警告
Wall
允许发出gcc提供的所有有用的报警信息
-werror
把所有的警告信息转化为错误信息,并在警告发生时终止编译过程
gcc编译器体系结构相关选项
mcpu=type
针对不同的CPU使用相对应的CPU指令,可以选择的type有i386、i486、pentium、i686等
mieee-fp
使用IEEE标准进行浮点数的比较
-mno-ieee-fp
不使用IEEE标准进行浮点数的比较
-msoft-float*
输出包含浮点库调用的目标代码
-mshort
把int类型作为16位进行处理
-mrtd
强行将函数参数个数固定的函数用reNUM返回,节省用函数调用的一条指令。