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,虽然这可能需要一些工作量,但这是面向未来的投资。

相关推荐
海涛高软2 小时前
Qt中使用QListWidget列表
开发语言·qt
凯子坚持 c3 小时前
Qt 信号与槽机制深度解析
开发语言·qt
世转神风-3 小时前
qt-初步编译运行报错-When executing step “Make“-无法启动进程“make“
开发语言·qt
一然明月14 小时前
QT之基础控件
开发语言·qt
深蓝海拓19 小时前
PySide6从0开始学习的笔记(十) 样式表(QSS)
笔记·python·qt·学习·pyqt
深蓝海拓19 小时前
PySide6从0开始学习的笔记(十三) IDE的选择
笔记·python·qt·学习·pyqt
YouEmbedded20 小时前
解码QPixmap 图片自适应控件缩放与圆角处理
qt·图片适配控件
Y1rong20 小时前
QT之天气预报
qt
Larry_Yanan1 天前
Qt多进程(二)QProcess+stdio
开发语言·qt