Qmake

QMake

QMake 是一个用于为 GNU Make 生成 Makefile 或为 Microsoft Visual Studio 生成项目构建文件的构建系统。QMake 是 Trolltech 公司 Qt 软件框架的一部分。虽然它常用于构建基于 Qt 的软件,但任何项目都可以从中受益。

立即试用

QMake 是什么?

QMake 是一个用于为 GNU Make 生成 Makefile 或为 Microsoft Visual Studio 生成项目构建文件的构建系统。QMake 是 Trolltech 公司 Qt 软件框架的一部分。虽然它常用于构建基于 Qt 的软件,但任何项目都可以从中受益。

QMake 和 Qt 框架遵循双许可证制度,支持像 Linux 系统的 KDE 桌面 和 Kdenlive 视频编辑器这样的开源项目使用 GPL(GNU 通用公共许可证)。商业开发者可以购买 Qt 许可证,它提供 QtCreator(请点击此处了解什么是Qt Creator)。QtCreator 是一个强大的开发系统,可提供技术支持并可选择将项目作为闭源应用程序发布。

工作原理是什么?

QMake 既可以使用现有的项目文件来生成 Makefile,也可以使用命令行中手动指定的参数和文件列表来创建项目文件。如果 QMake 生成了一个项目文件,那么 QMake 就可用该项目文件生成一个 Makefile 来与 make 结合使用。

QMake 的历史

QMake 是 Qt 软件框架的一部分,鉴于该框架历史悠久,很难判断 QMake 何时以实用程序身份并作为软件的一部分初次出现。不过,QMake 文档于 2005 年出现在 Qt 3.3 文档中。

QMake 的当前稳定版本是作为 Qt 6.1 的一部分发布的。

立即试用

免费获取 License

功能及优点

QMake 是一个非常有用的工具,可用于生成 Makefile 或 Microsoft Visual Studio 项目文件,并为开发人员提供了丰富的功能。QMake 支持变量、自定义构建逻辑和多个编译器,也支持预编译头文件,加快构建时间。

也许 QMake 最显著的特点是其可提供广泛的跨平台支持。Qt 框架支持 Windows、Linux、macOS、Android、iOS、UWP(通用 Windows 平台)和 WebAssembly。

CMake 和 QMake 之间的区别是什么?

QMake 可能是开发人员使用 Qt 软件框架来编写应用程序的最佳选择。QMake 与系统其他部分的深度集成是难以超越的。QMake 与 QtCreator 协作良好,所以它是 Qt 项目的一个简单解决方案。

CMake 是一个强大的构建系统,其功能超出了 QMake 和 Qt 的范围。虽然学习曲线更陡峭,但它的高级功能,比如支持构建第三方库,允许您拥有超出 QMake 的能力。您可以使用 CMake 来构建 Qt 项目,所以如果您是一个 Qt 开发人员,这两种方法都适用。

如果您想用 QtCreator 寻求简单的构建体验,那么用 QMake 绝对没错。对于更复杂的构建任务,CMake 可能才是更好的选择。

如何下载和安装 QMake?

如果您使用 Linux,QMake 可能是发行版软件包的一部分。由于版本可能不同,使用以下命令搜索最新版本:

Debian / Ubuntu: apt search qmake

RedHat Enterprise Linux / CentOS / Fedora: yum provides */bin/qmake*

根据您的系统,通过 apt 或 yum 安装搜索结果所指定的版本。

对于 macOS,运行:

brew install qt

在 Windows 上,您可以从 https://www.qt.io/download 下载 Qt。

无论您的平台如何,请牢记,除非您购买了 Qt,否则只能使用开源版本。

您还可以从 GitHub @ https://github.com/qt/qtbase 查看 Qt 的源代码。

QMake 示例

QMake 使用简单,您可以通过 QtCreator 或者通过命令行调用它。QMake 使用语法非常简单的项目文件(.pro)。

以下是我们可以使用源文件和头文件构建的最简单的项目文件:

HEADERS += example.h

SOURCES += example.cpp

TARGET = example

 

如果将文件命名为 example.pro,我们现在就有一个可以与 QMake 一起使用的项目文件。要将这个(或任何)项目文件转换为与 GNU Make 兼容的 Makefile,请运行此命令:

qmake -o Makefile example.pro

 

要生成 Visual Studio 项目文件,请运行:

qmake -tp vc example.pro

 

在生成的文件上运行 make 命令,它将构建您的源代码。

QMake 和 Incredibuild

QMake 是一个无比强大且灵活的构建系统,但性能并非其关注重点。这就是 Incredibuild 进入您的开发工作流程的原因。实际上,Incredibuild 在远程设备复制了您的构建环境,您就能以惊人的速度编译项目。Incredibuild 允许您利用本地网络或云端的计算资源,大幅减少应用程序的构建时间。

icon

总结

尤其是当 QMake 与优秀的 QtCreator 集成开发环境(IDE)搭配使用时,QMake 提供了一套完善的功能和简单的、可由用户编辑的项目文件语法,让您快速掌握应用程序的整个构建过程。通过极大地提高构建时间的性能,Incredibuild 扩展了 QMake 的功能。有了 Incredibuild,您可以大规模地并行化软件构建过程,极大提高您的开发工作流程的效率。

开始免费试用

More Build systems