簡體   English   中英

Qt 5.14 MinGW 工具鏈中的 Static 庫? (默認安裝Qt)

[英]Static libraries in Qt 5.14 MinGW toolchain? (default Qt installation)

剛才我注意到,默認的 Qt 安裝,至少 Qt 5.14 附帶的 MinGW Toolchain 帶有一個lib目錄,其中包含libQt5*.a文件。 這些文件是 static 庫嗎?

我這么認為是因為:

  1. 它們的大小與我靜態編譯 Qt 以進行發布時得到的大小相似。
  2. $file./libQt5Core.a輸出./libQt5Core.a: current ar archive ,與靜態編譯的輸出相同。

如果它們確實是 static 庫,我如何告訴 QMake(例如編輯.pro文件)鏈接到那些而不是鏈接到共享的?

Qt 靜態庫的 Windows 屏幕截圖

這些文件是 static 庫嗎?

不,它們不是 static。 Qt 的默認在線安裝程序僅提供共享庫。 該 *.a 文件是所謂的導入庫。

導入庫是一個.a 或.lib 庫,但它只包含告訴鏈接器/操作系統您的程序如何與 dll 交互所需的一些信息。

如果您出於某些原因需要 Qt static windows 構建,您有一些選擇:

  • HARD自己構建整個 Qt(或需要的模塊)。

  • 輕松使用vcpkgvcpkg install qt5:x64-windows-static

如果出於某種原因需要 MinGW,可以使用 vcpkg 創建自定義 MinGW三元組 但我建議你堅持使用 MSVC。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM