簡體   English   中英

如何使用 find_package 使用 CMake 靜態鏈接到許可的 Qt 庫?

[英]How do I link to Licensed Qt Libraries statically with CMake using find_package?

我正在將 Visual Studio 2010 項目移植到 CMake 和 Visual Studio 2015。我使用默認行為構建並鏈接到 Qt

find_package (Qt5 5.9.3 COMPONENTS
    Core
    Multimedia
    Network
    Widgets
    Xml
    XmlPatterns
    REQUIRED)

我想要做的是利用我擁有開發人員許可證並且應該能夠靜態鏈接到 Qt 庫而無需從源代碼構建的事實,從而顯着清理我的應用程序目錄。

我正在建立與

target_link_libraries (${ProjectName}
    Qt5::Core
    Qt5::Multimedia
    Qt5::Network
    Qt5::Widgets
    Qt5::Xml
    Qt5::XmlPatterns)

我還需要什么才能使它靜態鏈接?

如果這還沒有完成,您將不得不靜態構建 Qt。

簡而言之,您必須安裝 perl、python、可選的 jom 並按照https://doc.qt.io/qt-5/windows-building.html 上的說明進行操作

下載源碼后,啟動shell,configure命令如下所示

configure.bat -platform win32-msvc -release ^
-nomake examples ^
-nomake tests ^
-static

安全證書

您還必須決定是否需要SSL 支持 如果沒有,只需給出選項:

-no-ssl

如果是,則附加選項類似於

-openssl -I %OPENSSL_INCLUDE_DIR% -L %OPENSSL_LIBRARY_DIR%

必須通過。

可以使用Qt5 配置腳本中使用的 OpenSSL 版本。

$version = "1_0_2o"
$externalUrl = "https://slproweb.com/download/Win64OpenSSL-$version.exe"

圖形驅動程序、WebEngine、...

您還必須在這方面做出一些決定: https : //doc.qt.io/qt-5/windows-requirements.html

暫無
暫無

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

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