我正在使用qmake
和Visual Studio。在發佈版本中,qmake爲所有項目添加了/ GL和/ O2標誌,我需要爲整個Qt項目中的某些庫刪除這兩個標誌。有沒有辦法?Qmake:如何刪除某個項目的編譯器標誌,而不更改qmake.conf?
6
A
回答
3
這可能是工作的唯一方法是
QMAKE_CFLAGS -= /GL /O2
但我懷疑這適用於QMAKE_CFLAGS
。
或者,您可以重新定義QMAKE_CFLAGS
,忘記之前的值:
QMAKE_CFLAGS = $$CFLAGS_WITHOUT_GL_O2
1
您可以編輯一個使用您的配置QMAKESPEC。
最簡單的方法找到它是通過打開
%QTDIR%\mkspecs\%QMAKESPEC%
假設變量的設置與環境(他們應該是)
就在它不工作的情況下,它會像C:\Qt\4.x.x\mkspecs\win32-msvc2010
在qmake.conf文件中,您可以調整兩行(它們位於文件中的不同位置)
QMAKE_CFLAGS_RELEASE = -O2 -MT
QMAKE_CFLAGS_LTCG = -GL
到
QMAKE_CFLAGS_RELEASE = -MT
QMAKE_CFLAGS_LTCG =
但是請注意,你將不得不對所有的Qt版本做到這一點,你正在使用(併爲每個未來的更新,你會做)。
[編輯]
如果您想爲某些項目-02 -GL選項,你將不得不
QMAKE_CFLAGS_RELEASE += -O2
QMAKE_CFLAGS_LTCG += -GL
添加到需要這些選擇項目的.pro文件。
取決於使用它的項目數量和不使用項目的數量,這種方法或重新定義QMAKE_CFLAGS會更方便。
8
我也有類似的問題,我解決它通過在.pro文件中添加以下指令:
QMAKE_CXXFLAGS_RELEASE - = -g
觀察_Release後綴,否則不工作。
5
我用這個編輯了我的.pro文件,它工作正常!
QMAKE_CXXFLAGS_RELEASE -= -Zc:strictStrings
QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO -= -Zc:strictStrings
它不工作:
QMAKE_CFLAGS_RELEASE -= -Zc:strictStrings
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO -= -Zc:strictStrings
你可以試試:
QMAKE_CXXFLAGS_RELEASE -= -GL -O2
QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO -= -GL -O2
採取一看:
你的Qt目錄\編譯\ mkspecs \ Win32的msvc2013 \ qmake.conf
+0
我相信檢查.conf文件不能足夠強調 –
相關問題
- 1. 更改CMakeLists.txt中的一個項目的編譯器標誌
- 2. 如何某些編譯器標誌,只有某些目標
- 3. 在CMake項目中隨時更改編譯器標誌
- 4. Xcode項目範圍編譯器標誌
- 5. Cmake更改編譯標誌
- 6. 如何刪除XCode中的-mthumb編譯器標誌?
- 7. 如何在構建Boost時刪除編譯器標誌
- 8. 刪除某個目錄的編譯器警告
- 9. 如何更改GCC編譯器的目標目錄?
- 10. Xcode項目模板中的每個文件編譯器標誌
- 11. Makefile生成:如何防止QMake設置編譯標誌
- 12. 如何在qmake項目中爲moc添加特定的標誌?
- 13. 如何更改頁面標題而不更改標籤欄項目的標題?
- 14. 如何更改已編譯的.class文件而不反編譯?
- 15. g ++等效的編譯器標誌到VC++編譯器標誌
- 16. 從autotools中刪除編譯器/鏈接器標誌配置
- 17. qmake.conf和項目文件
- 18. 如何在LabVIEW中編譯用於編譯標誌的不同目標的VI?
- 19. 更改符號鏈接的目標而不刪除
- 20. 可以使用qmake創建的項目不使用qmake進行編譯?
- 21. 如何更改gma的qmake發佈標誌? (將-O2更改爲-Os)
- 22. 將Framework項目的編譯器標誌依賴項添加到主項目中
- 23. 如何用CMake更改文件夾的編譯標誌?
- 24. 如何設置該編譯器標誌?
- 25. 如何從列表中刪除項目而不刪除.remove?
- 26. 如何從ListView中刪除項目而不從數據庫中刪除項目?
- 27. 如何在ASP.NET Web Site項目中定義TRACE編譯標誌?
- 28. 如何更改GHC的編譯目錄?
- 29. 如何在更改Makefile標誌時強制重新編譯?
- 30. 如何在某些項目之間刪除QListWidget上的項目?
試過' - =' - 沒有運氣。而第二種解決方案是如此明顯,我什至沒有想到它:) –