Linuxビルドでは、メイクファイル(CFLAGS
およびCXXFLAGS
)で-O1
ではなく-O2
を使用したいと思います。これらのメイクファイルが.proファイルに基づいてどのように生成されるかについての私の理解はやや欠けています。これは、-O2
が存在する場合、使用しているG ++のバージョンと組み合わせたQtのバージョンが不安定になるためです。
現在、qmakeを実行した後、これを実行する置換スクリプトを実行しています。
sed -i 's/\-O2/\-O1/g' AllProjects/Makefile.Release
これはゲットーソリューションです。より良い解決策は、.proファイルを変更してこれらのディレクティブを渡すようにすることです。 CFLAGS
とCXXFLAGS
がどのように生成されているかはわかりません。
私は合格してみました
linux-g++-{
CFLAGS += -O1
CXXFLAGS += -O1
CONFIG += -O1
}
うまくいきませんでした。
あなたはとても親しかった。あなたが欲しいのは:
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