Mac OS X 上的 GCC 标志 -Os 来自哪里?

Posted

技术标签:

【中文标题】Mac OS X 上的 GCC 标志 -Os 来自哪里?【英文标题】:Where does the GCC flag -Os come from on Mac OS X? 【发布时间】:2012-06-13 17:50:30 【问题描述】:

我正在尝试安装 CurlPP,但似乎在 CXXFLAGS 中添加了“-Os”。然后,它尝试删除优化标志,但 automake 中的正则表达式 -O[0-9] 与“s”不匹配。这会导致构建失败。

这个“-Os”从何而来?这是一个合法的优化标志,还是什么?

如何使用自制软件更改我机器上的 CXXFLAGS?

【问题讨论】:

【参考方案1】:

-Os 针对大小进行了优化。老实说,这很漂亮standard on any C compiler。也许只是更改正则表达式?

【讨论】:

【参考方案2】:

谢谢,我也有同样的问题,但我不知道为什么它会在命令行中抱怨一些's'! 修复很简单:运行brew edit curlpp,然后插入行

ENV.remove_from_cflags(/-O./)

在脚本中安装函数的开头。但这会关闭优化,因此您可能会找到更好的解决方案。但是这个包安装得很好。

【讨论】:

哦,我刚刚在 Homebrew 的跟踪器中发现了这个 bug,问题出在 curlpp 代码中,但它不是非常活跃的项目,所以没有补丁。

以上是关于Mac OS X 上的 GCC 标志 -Os 来自哪里?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 gcc 中启用单个优化标志?

MAC OSX LION:mac 上的 gcc 未编译 wget

Mac OSX 上的 GCC——多个版本的 gcc

mac上的架构x86_64错误的未定义符号

否定 GCC 的先前 -D[efine] 标志

Mac 上的 gcc 4.7.3 和 gdb 7.6 - 奇怪的步进问题