由于谈到Qt 6.0的特性和功能,有大量的东西要谈,所以我将把这些留给关于Qt 6.0的多篇详细博文。我们已经发表了许多关于Qt 6.0提供的所有酷炫的东西的博文,并将在今年继续发表更多的博文。今天我把所有关于Qt6的博文都做了个整合,点击此处即可查看。
Qt 6 通过包管理器提供附加库
在Qt 6中,我们希望通过利用Qt在线安装程序之外的包管理器来提供更多的灵活性。新的包管理器功能基于conan.io (https://conan.io),可以在不增加Qt基线复杂性的情况下为用户提供更多的包。除了Qt提供的包之外,包管理器还可以用来从其他来源获取内容。
最初,我们通过包管理器提供了三个附加库。QQt Network Authorization, Qt Image Formats,和 Qt 3D。更多的附加库将在即将发布的 Qt 6 中提供。目前,我们正在利用现有的 Qt 交付系统作为通过包管理器提供的附加库的后端。
如何管理软件包?
Conan、CMake和Ninja等所需的工具可以通过即将发布的Qt Online安装程序4.0轻松安装。Conan构建附加库的配方需要CMake和Ninja来构建模块。链接到该模块的项目也可以基于qmake。
安装后,可以通过Conan按选定的目标配置来构建一次选定的附加库。构建完成后,二进制包可以在用户的本地Conan缓存中使用,并且可以链接到任何其他项目。
如何获取和构建包?
一个例子的构建调用是这样的。
$conan.exe install qtnetworkauth/6.0.0@qt/beta --build=missing
--profile=<QtSdk>/Tools/Conan/profiles/qt-6.0.0-msvc2019_64 -s
build_type=Release -g cmake_paths -g=cmake -g deploy
现在,让我们看一下其中包含的内容:
- qtnetworkauth /6.0.0@qt/beta这是该软件包的Conan参考您可以通过以下方式在Conan缓存中搜索可用的软件包:$ conan .exe search
- ---概况这个文件是由Qt安装程序安装的。每一个由Qt安装程序安装的Qt 6 Essential包也会安装一个匹配的配置文件。这告诉Conan目标构建配置。用户需要选择一个合适的配置文件,即目标构建配置。
- -G如果你的消费项目是一个CMake项目,那么就使用CMake生成器。如果你的消费项目是一个qmake项目,那么你可以通过。-g qmake"deploy "生成器可以将Conan缓存中的附加库部署到你的工作环境中。如果你想把你的应用程序文件捆绑在一起,这很有用。
目前,Qt在线安装程序将附加库包(源码和构建配方)导出到Conan缓存中。没有Conan远程来托管附加库Conan包。
接下来……
和Qt 6.0一样,目前的工作还处于测试阶段,欢迎大家反馈。需要注意的是,目前Conan配置文件和Android和iOS目标的构建食谱正在进行中。另外,附加库的构建目前还不是资源库的一部分。 一旦构建成熟,计划将这些转移到模块仓库中。
如果你想看一下conanfile.py配置样子,可以在Qt安装中的 "AdditionalLibraries/Qt/"中的每个模块下找到。
感谢您的阅读,希望这篇文章能带给你一定的帮助!如果这篇文章没能满足你的需求、点击下方“了解更多”获取更多资讯教程。