問題: CONFIG(debug,debug|release) および CONFIG(release,deubg|release) は、Qt Creator 2.8.1 for Linux で debug または release が選択されると常に評価されます。
Qt Creator アプリケーションでの私の構成 (ストック - 新しいプロジェクトのデフォルト):
Projects->Build Settings->Debug Build Steps:
qmake build configuration: Debug
Effective qmake call: qmake2 proj.pro -r -spec linux-gnueabi-oe-g++ CONFIG+=debug
Projects->Build Settings->Release Build Steps:
qmake build configuration: Release
Effective qmake call: qmake2 proj.pro -r -spec linux-gnueabi-oe-g++
proj.pro での私の構成:
message(Variable CONFIG:)
message($$CONFIG)
CONFIG(debug,debug|release)
{
message(Debug build)
}
CONFIG(release,debug|release)
{
message(Release build)
}
デバッグ用のコンソール出力:
Project MESSAGE: Variable CONFIG:
Project MESSAGE: lex yacc warn_on debug uic resources warn_on release incremental link_prl no_mocdepend release stl qt_no_framework debug console
Project MESSAGE: Debug build
Project MESSAGE: Release build
リリースのコンソール出力:
Project MESSAGE: Variable CONFIG:
Project MESSAGE: lex yacc warn_on uic resources warn_on release incremental link_prl no_mocdepend release stl qt_no_framework console
Project MESSAGE: Debug build
Project MESSAGE: Release build
Windows 7 では、このような .pro 構成で問題は発生せず、問題なく動作しました。私は絶望的で、.pro ファイルを変更しました。
CONFIG = test
message(Variable CONFIG:)
message($$CONFIG)
CONFIG(debug,debug|release)
{
message(Debug build)
}
CONFIG(release,debug|release)
{
message(Release build)
}
そして私は出力に驚いた:
Project MESSAGE: Variable CONFIG:
Project MESSAGE: test
Project MESSAGE: Debug build
Project MESSAGE: Release build
そのため、CONFIG変数を完全に消去しても、デバッグとリリースの構成が表示されます。
私は何を間違っていますか?