![](/img/trans.png)
[英]PRECOMPILED HEADERS not working in debug build with Qt Creator / qmake / MinGw
[英]Linking with a debug/release lib with qmake/Qt Creator
我正在使用Qt Creator並擁有一個依賴於C ++靜態庫項目的Qt GUI項目。 我想將GUI應用程序的發布版本與.lib的發布版本以及帶有調試.lib的GUI應用程序的調試版本鏈接起來。 我已經找到了如何通過在我的.pro文件中包含如下所示的行來向項目中添加其他庫:
LIBS += -L./libfolder -lmylib.lib
但我無法看到如何使用不同的-L
命令進行發布和調試構建。
qmake是否有支持這樣做?
正常
debug:LIBS += ...
else:LIBS += ...
當用戶天真地使用CONFIG += debug
或CONFIG += release
來在調試和發布版本之間切換時,解決方案會中斷(他們會這樣做;沒有人記得在CONFIG += debug
:)之前說CONFIG -= release release_and_debug
。
這是debug
范圍的規范方法:
CONFIG( debug, debug|release ) {
# debug
QMAKE_LIBDIR += "path/to/debug/lib"
} else {
# release
QMAKE_LIBDIR += "path/to/release/lib"
}
參看 qmake文檔 。
編輯2013-11-17 :不要在LIBS
使用-Lfoo
。 規范的方法是將路徑(不帶-L
)添加到QMAKE_LIBDIR
。
在您的項目文件中,您可以執行以下操作
debug {
LIBS += -L./libfolder -lmydebuglib.lib
}
release {
LIBS += -L./libfolder -lmyreleaselib.lib
}
如果已將DEBUG添加到CONFIG qmake變量,則使用調試大括號內的位,如果將RELEASE添加到CONFIG變量,則類似於釋放括號內的內容。
您也可以使用“!debug”而不是“release”(即當調試不在配置中時)
您可以在此處找到有關qmake的更多信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.