Подтвердить что ты не робот

Изменение CXXFLAGS Из файла My.pro

Возможный дубликат:
Настройка компилятора GCC в Qt, QtCreator и QMake

Я хотел бы использовать -O1 вместо -O 2 в моем make файле (CFLAGS и CXXFLAGS) для моей сборки Linux, но мое понимание того, как эти make файлы создаются на основе .pro файла, немного отсутствует. Это связано с тем, что версия Qt в сочетании с версией g++, которую я использую, имеет неустойчивости, когда присутствует -O2.

В настоящее время я запускаю замену script после запуска qmake, который делает следующее:

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

Это решение гетто. Гораздо лучше было бы изменить файл .pro так или иначе, чтобы пройти по этим директивам. Я не уверен, как генерируются CFLAGS и CXXFLAGS, и я решил, что попрошу замечательный StackOverflow.

Я пробовал пропустить

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

который не работал.

4b9b3361

Ответ 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