【问题标题】:CXXFLAGS modification of Qt pro file? [duplicate]Qt pro文件的CXXFLAGS修改? [复制]
【发布时间】:2011-08-15 18:40:48
【问题描述】:

可能重复:
Configuring the GCC compiler switches in Qt, QtCreator, and QMake

我想在我的 Linux 构建文件(CFLAGSCXXFLAGS)中使用 -O1 而不是 -O2。我对如何基于 .pro 文件生成这些 makefile 的理解有些欠缺。这是因为当存在-O2 时,Qt 版本与我正在使用的 G++ 版本相结合存在不稳定。

目前,在我运行 qmake 之后,我正在运行一个替换脚本:

sed -i 's/\-O2/\-O1/g' AllProjects/Makefile.Release

这是一个贫民区解决方案。更好的解决方案是以某种方式修改 .pro 文件以传递这些指令。我不确定CFLAGSCXXFLAGS 是如何生成的。

我试过传递一个

linux-g++-{ 
      CFLAGS += -O1
      CXXFLAGS += -O1
      CONFIG += -O1
}

这不起作用。

【问题讨论】:

  • linux-g++-{ QMAKE_CXXFLAGS += -O1 } 不起作用,linux-g++-{ QMAKE_CXXFLAGS_RELEASE += -O1 } 也不起作用,我应该提到我在我的解决方案。
  • 我觉得我的支票也有点太紧了,因为看起来 QMAKE_CXXFLAGS 应该可以工作。
  • 确实如此,我使用它。尝试linux* 作为条件。

标签: c++ linux qt makefile qmake


【解决方案1】:

你们很亲密。你想要的是:

QMAKE_CXXFLAGS += -O1

如果您只想将标志应用于发布版本,那么您可以使用这个:

QMAKE_CXXFLAGS_RELEASE += -O1

您可能还希望将您的条件更改为更灵活一点。总之,是这样的:

*-g++* {
    QMAKE_CXXFLAGS += -O1
}

更多文档在这里:http://qt-project.org/doc/qt-5.0/qtdoc/qmake-variable-reference.html#qmake-cxxflags

【讨论】:

  • 谢谢,我的标志也太紧了,就像你建议的那样。
  • @Brian:是的,你有一个尾随破折号杀死了它。
  • 如果您设置的标志也与链接有关,您还需要设置例如。 QMAKE_LFLAGS += -m32
  • 这对我不起作用。您的解决方案将 -O2 更改为 -O1 -O2,这几乎没有帮助。
猜你喜欢
  • 1970-01-01
  • 2014-04-14
  • 2016-07-09
  • 2014-05-26
  • 2021-03-18
  • 1970-01-01
  • 1970-01-01
  • 2016-11-03
相关资源
最近更新 更多