Qt之构建方式

qt6官方支持Cmake构建项目,这里以Qt 6.5.3+Qt Creator18.0.0为例。

一 构建方式

1.1构建方式介绍

当前版本支持四种构建方式,如下:

特性维度 qmake CMake (Qt 5 & 6) Qbs
来源/定位 Qt传统专用工具 行业通用的跨平台构建系统 Qt曾力推的下一代构建系统
配置文件 .pro 文件(语法简单) CMakeLists.txt 文件 .qbs 文件(基于JavaScript)
主要特点 紧密集成Qt特性;语法简单但功能有限 生态强大 ,支持现代C++标准;第三方库集成 便捷;跨平台支持极佳 声明式语法,直接管理构建依赖图,增量编译速度快
当前状态 维护状态,Qt 6不推荐用于新项目 官方主推,Qt 6框架自身已改用CMake构建 已被弃用,Qt已停止其开发
与Qt版本关系 Qt 5及之前版本的默认/主要构建工具 Qt 6的官方构建系统,也是构建Qt 6应用的推荐选择 曾计划作为Qt 6的默认选项,但未能成功

1.2 构建方式选择

  • qmake:逐步淡出的"元老"

    作为Qt的传统工具,qmake的语法对Qt开发者非常友好,能自动处理Qt特有的元对象编译。但正如搜索结果所指,其设计已难以满足现代大型、复杂项目的需求。因此,官方已明确表示,在Qt 6中,qmake仅用于维护旧项目,不推荐用于新项目

  • CMake:当下与未来的"标准答案"

    CMake是目前C++社区事实上的标准构建系统 。它的强大之处在于极佳的跨平台支持、便捷的第三方库集成能力,以及对现代C++工程实践(如模块化、测试、打包)的完整支持。Qt公司也基于这些原因,在Qt 6中将整个框架的构建系统迁移到了CMake。对于所有新的Qt 6项目,CMake是官方推荐且最理想的选择。

  • Qbs:壮志未酬的"革新者"

    Qbs是Qt为解决qmake的局限性而开发的下一代构建工具,采用声明式语法,旨在提供更快的构建速度和更好的灵活性。但由于学习曲线陡峭、社区生态未能建立,最终在2019年被Qt官方宣布停止开发。现已不建议在新项目中使用。

1.3 简而言之

  • 开发新的Qt 6项目 :请直接使用 CMake

  • 维护旧的Qt 5项目 :可以继续使用 qmake 以保持稳定。

  • 将Qt 5项目迁移至Qt 6 :官方也推荐将构建系统一并迁移到CMake,虽然这可能需要一些工作量,但这是面向未来的投资。

相关推荐
程序leo源2 小时前
Qt窗口详解
开发语言·数据库·c++·qt·青少年编程·c#
我在人间贩卖青春4 小时前
重学Qt——事件处理
qt
小宋0014 小时前
QT中控件qss样式修改
开发语言·qt
yuechuji0018 小时前
三、MPR(三平面重建)和三视图
qt
Hua-Jay9 小时前
OpenCV联合C++/Qt 学习笔记(二十二)----相机模型与投影及单目相机标定
c++·笔记·qt·opencv·学习·计算机视觉
小短腿的代码世界11 小时前
QCefView架构深度解析:从Chromium嵌入到Qt信号槽集成的完整技术链路
qt·架构
byxdaz12 小时前
Qt修改操作系统的日期与时间
qt
小短腿的代码世界12 小时前
Qt属性系统揭秘:从Q_PROPERTY宏到动态元对象系统的完整架构解析
开发语言·qt·架构
丁劲犇12 小时前
QodeAssist:为msys2 ucrt64 Qt Creator 注入 AI 灵魂的开源插件
开发语言·人工智能·qt
listhi52012 小时前
基于QT的串口心电波形实时显示系统
开发语言·qt