所在位置:首页 → 编程语言 → C++ → Qt的编译方式:qmake/cmake/qbs的区别以及如何选择

Qt的编译方式:qmake/cmake/qbs的区别以及如何选择

发布: 更新时间:2022-12-30 01:09:03

在使用Qt Creator创建项目时,选择构建工具时,有三个选择:Qmake、Cmake以及Qbs。那么这三者有什么区别呢?我们又该如何选择?

先说结论

  1. Qbs将被官方废弃
  2. Qt6使用qmake和cmake构建
  3. Qt未来用cmake取代qmake位置

Qbs为什么被废弃?

Qt官方声明:因市场原因,弃用Qbs

Qt公司一直在为Qt程序支持三种不同的构建系统。对于Qt用户,qmake是当前使用最广泛的构建系统。CMake是第二名,并且越来越受欢迎。第三名是Qbs,采用率明显降低。当被问及他们的喜好时,我们的大多数客户都说他们计划将来使用CMake或qmake。

我们已决定弃用Qbs,并重定向资源以增加对CMake的支持。Qbs将与Qt Creator 4.9一起一直支持到2019年底,最后计划于2019年4月发布。Qbs既可以通过商业许可也可以通过开源许可获得,我们很高兴继续为Qt Project社区提供进一步开发的基础设施。

总结要点:

  • Qbs将继续得到支持,直到2019年底
  • 最新的Qbs版本将于2019年4月发布
  • Qbs继续与即将推出的Qt Creator 4.8和Qt Creator 4.9一起使用
  • Qt项目下将提供Qbs库和工具,以供社区进一步开发
  • 对qmake的支持将继续不受影响
  • 对CMake的支持将得到改善
  • 从长远来看,我们计划切换到CMake来构建Qt本身
  • Qt Creator中的CMake支持将得到进一步改善

Qmake与Cmake的区别?

[postsbox post_id="5138"]

Qmake

  • 专注于使用Qt的项目
  • QtCreator可以轻松生成项目文件(适合初学者)
  • 由QtCreator支持

CMake

  • 用于广泛的项目
  • 支持多种平台和语言
  • 受多个IDE支持:例如QtCreator,Visual Studio
  • 生成多个IDE的项目描述
  • 包含简化Qt使用的命令(最重要:automoc)

我的建议:如果QtCreator是您的IDE,并且从Qt或C ++开始,请使用qmake。如果要在构建中执行任何复杂的操作,请使用cmake。

根据最初的结论来说,cmake越来越重要,一般的Qt项目就用qmake就足够了,而且比cmake更简单。相对的cmake的使用更加广泛,也是趋势也在,学习cmake肯定没有问题。Qbs就没有必要了!

标签:, , , ,
文章排行