2011-07-03 49 views
1

我正在使用QtCreator,我有兩個項目,每個都有一個自己的PRO文件。
查看器是一個正常的Qt應用程序。 另一個,我們稱之爲Utilities,應該是一個在查看器中使用的靜態庫。QtCreator:靜態庫,但仍然要求DLL

但是,當我編譯和運行查看器(一切編譯好),我收到一條錯誤消息,告訴我沒有找到Utilities.dll。

這是PRO-文件公用設施的第一部分:

 
QT  -= core gui 

TARGET = Utilities 
TEMPLATE = lib 
CONFIG += staticlib warn_on $$(QMAKESPEC) 

它不應該工作方式?

爲什麼它編譯好的Utilities.a文件,但要求我在運行時的DLL?它應該是一個靜態庫:(
由於我沒有指定Utilities.pro一些必要的庫,它顯然沒有鏈接如你所期望的靜態庫。

我的平臺是W7-64, 。最新的Qt SDK和MinGW 4.4與它捆綁 希望有人能幫助:/

感謝

回答

0

CONFIG += staticlib請求目標庫是一個靜態庫而不是整個依賴鏈......我!很確定你的.a lib將需要mingw dll運行...

如果你想減少依賴關係嘗試MSVC工具鏈(Qt提供預編譯的軟件包),你將以一個或兩個強制性的dll依賴關係結束。或者您可以再次鏈接靜態mingw SDK(您可能必須構建它自己...)。

相關問題