LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1184|回复: 2

嵌入式常用编译选项

[复制链接]
发表于 2005-11-5 10:32:00 | 显示全部楼层 |阅读模式
1、-Wall : (warn all)打开所有常用警告选项,但还有很多需单独打开。
2、-g :以操作系统的本地格式(stabs, COFF, XCOFF,或DWARF).产生调试信息. GDB能够使用这些调试信息.
3、-p :产生额外代码,用于输出profile信息,供分析程序prof使用.
4、-O : 使用了`-O'选项,编译器会试图减少目标码的大小和执行时间.常用的是-O2.多优化一些.除了涉及空间和速度交换的优化选项,执行几乎所有的优化工作.例如不进行循环展开(loop unrolling)和函数内嵌(inlining).和-O选项比较,这个选项增加了编译时间,提高了生成代码的 运行效果.
5、-Os :优化尺寸,该选项使能所有不增加尺寸的O2优化,并且进一步根据尺寸优化
6、-Dmacro :定义一个macro,名字为macro,值为1,也可以跟=指出macro的值
7、-Umacro :取消一个名为macro的宏
8、-nostdinc  :不要在标准系统目录中寻找头文件.只搜索`-I’选项指定的目录(以及当前目录,如果合适).  结合使用`-nostdinc’和`-I-’选项,你可以把包含文件搜索限制在显式指定的目录.  
9、-c  :编译或汇编源文件,但是不作连接.编译器输出对应于源文件的目标文件.  
10、-fno-builtin:不接受不以双下划线开头的内建函数
11、-Wstrict-prototypes:如果函数的声明或定义没有指出参数类型,编译器就发出警告. (如果函数的前向引用说明指出了参数类型,则允许后面 使用旧式风格的函数定义,而不会产生警告.)
12、-fPIC:如果支持这种目标机,编译器就输出位置无关目标码.适用于动态连接(dynamic linking),即使分支需要大范围转移.

更多选项详见《GCC 中文手册》
发表于 2005-11-6 21:25:14 | 显示全部楼层
列出来也好,虽然书上写了
回复 支持 反对

使用道具 举报

发表于 2006-4-25 14:12:31 | 显示全部楼层
hao楼主的贴就一定要顶!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表