↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

已结束支持的版本: 7.3 / 7.2 / 7.1 / 7.0 / 6.5 / 6.4
历史版本。 PostgreSQL 7.1 已结束支持。 请参阅 当前版本手册.

第 5 章 gcc 默认优化

Brian Gallew

注意

由 Brian Gallew()贡献

把 gcc 配置成默认使用某些标志只是编辑 /usr/local/lib/gcc-lib/platform/version/specs 文件的一件简单事。这个文件的格式相当简单。文件分成若干节,每节三行。第一行是 "*section_name:"(例如 "*asm:")。第二行是标志列表,第三行为空。

最容易的修改是把想要的默认标志追加到相应节的列表中。作为示例,假设我在一台 '486 上运行 linux,gcc 2.7.2 安装在默认位置。在文件 /usr/local/lib/gcc-lib/i486-linux/2.7.2/specs 的第 13 行处我找到下面这一节:

- ----------SECTION----------
*cc1:


- ----------SECTION----------

如你所见,没有任何默认标志。如果我希望 C 代码的编译总是使用 "-m486 -fomit-frame-pointer",我会把它改成这样:

- ----------SECTION----------
*cc1:
- -m486 -fomit-frame-pointer

- ----------SECTION----------

如果我还想为另一台闲置的较旧 linux 机器生成 386 代码,就必须把它改成这样:

- ----------SECTION----------
*cc1:
%{!m386:-m486} -fomit-frame-pointer

- ----------SECTION----------

这样就会总是省略帧指针,并且在命令行上未指定 -m386 时生成 486 优化的代码。

实际上你可以用 specs 文件做相当多的定制。但始终要记住,这些更改是全局的,会影响系统的所有用户。

报告文档问题

阅读 上游文档. 反馈更正前请先核对 当前版本手册.