,既鐺++和g ++繼續使用:qmake時同時啓用兩個鐺++和g ++不管我.pro文件內容
linux-clang++
{
message("Using clang++")
QMAKE_CXXFLAGS += -Weverything
}
linux-g++
{
message("Using g++")
QMAKE_CXXFLAGS += -Wall -Wextra
}
我也試圖通過contains(QMAKE_CXX, clang++)
和equals(QMAKE_CXX = clang++)
檢查QMAKE_CXX
,如每QMAKE文檔,但我得到了相同的輸出,而不管:
Project MESSAGE: Using clang++
Project MESSAGE: Using g++
message($$QMAKESPEC)
輸出Project MESSAGE: /usr/lib/qt/mkspecs/linux-g++
,並構建設置,也可以說-spec linux-g++
,但它似乎保持其鐺EN體健。
反過來也是如此:將我在QtCreator中的默認編譯器更改爲clang,並設置QMAKE_CXX = clang++
導致g ++仍然在使用。
只能假設我錯過了什麼地方?
多少Makefile文件QMAKE爲您生成?他們裏面有什麼? – Drop
根據需要只生成1個makefile,並且它都是正常的(-spec linux-g ++等)。這可以在建築之前檢測到;編輯.pro文件並保存,qtcreator自動分析並輸出這兩個消息。即使添加equals(QMAKE_CXX,「blah」)',它仍然會進入其範圍。 – ZXcvbnM