1.GCC常用选项
-E 预处理后即停止,不进行编译、汇编及连接
-S 编译后即停止,不进行汇编及连接
-C 编译或汇编源文件,但不进行连接
-O file 指定输出文件为file
预处理::
gcc -E example.c -o example.i
编译::
gcc -S example.i -o example.s
汇编::
gcc -c example.s -o example.o
连接::
gcc example.o -o example
2.警告选项
-Wall 启用所有警告信息
-Werror 在发生警告时取消编译操作,即将警报看做是错误
-w 禁用所有警告
3.优化选项
-OO:不进行优化处理
-O或-O1:进行基本的优化,
-O2:除了完成-O1级别的优化外,还要一些额外的调整工作,如处理器指令调度等,这是GNU发布软件的默认优化级别
-O3:除了完成-O2级别的优化外,还要进行一些与处理器特性相关的优化工作
-Os:生成最小的可执行文件,主要用在嵌入式
4.连接器选项
-Idirectory 向GCC的头文件搜索路径中添加新的目录 //directory为路径名
-Ldirectory 向GCC的库文
-E 预处理后即停止,不进行编译、汇编及连接
-S 编译后即停止,不进行汇编及连接
-C 编译或汇编源文件,但不进行连接
-O file 指定输出文件为file
预处理::
gcc -E example.c -o example.i
编译::
gcc -S example.i -o example.s
汇编::
gcc -c example.s -o example.o
连接::
gcc example.o -o example
2.警告选项
-Wall 启用所有警告信息
-Werror 在发生警告时取消编译操作,即将警报看做是错误
-w 禁用所有警告
3.优化选项
-OO:不进行优化处理
-O或-O1:进行基本的优化,
-O2:除了完成-O1级别的优化外,还要一些额外的调整工作,如处理器指令调度等,这是GNU发布软件的默认优化级别
-O3:除了完成-O2级别的优化外,还要进行一些与处理器特性相关的优化工作
-Os:生成最小的可执行文件,主要用在嵌入式
4.连接器选项
-Idirectory 向GCC的头文件搜索路径中添加新的目录 //directory为路径名
-Ldirectory 向GCC的库文