首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用find_package通过CMake静态链接到许可的Qt库?

如何使用find_package通过CMake静态链接到许可的Qt库?
EN

Stack Overflow用户
提问于 2018-08-17 02:36:53
回答 1查看 543关注 0票数 1

我正在将一个Visual Studio2010项目移植到CMake和Visual Studio2015。我有它的建设和链接与默认行为与Qt的意见

代码语言:javascript
复制
find_package (Qt5 5.9.3 COMPONENTS
    Core
    Multimedia
    Network
    Widgets
    Xml
    XmlPatterns
    REQUIRED)

我想要做的是利用这样一个事实,即我拥有开发人员许可证,并且应该能够静态链接到Qt库,而无需从源代码进行构建,从而大大清理了我的应用程序目录。

我正在设置与

代码语言:javascript
复制
target_link_libraries (${ProjectName}
    Qt5::Core
    Qt5::Multimedia
    Qt5::Network
    Qt5::Widgets
    Qt5::Xml
    Qt5::XmlPatterns)

我还需要什么才能让它静态链接?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-17 12:32:37

如果还没有这样做,你将不得不静态地构建Qt。

简而言之,您必须安装perl、python、可选的jom,并按照https://doc.qt.io/qt-5/windows-building.html上的说明进行操作。

下载源代码并启动shell后,configure命令将如下所示

代码语言:javascript
复制
configure.bat -platform win32-msvc -release ^
-nomake examples ^
-nomake tests ^
-static

SSL

您还必须决定是否要使用SSL support or not。如果不是,只需给出选项:

代码语言:javascript
复制
-no-ssl

如果是,则提供一个类似于

代码语言:javascript
复制
-openssl -I %OPENSSL_INCLUDE_DIR% -L %OPENSSL_LIBRARY_DIR%

必须通过。

可以使用OpenSSL版本的used in the Qt5 provisioning script

代码语言:javascript
复制
$version = "1_0_2o"
$externalUrl = "https://slproweb.com/download/Win64OpenSSL-$version.exe"

图形驱动程序,WebEngine,...

您还必须在这方面做出一些决定:https://doc.qt.io/qt-5/windows-requirements.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51883422

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档