cmake-generators(7)

简介

一个 CMake 生成器 负责为原生构建系统编写输入文件。必须为构建树选择一个且只有一个 CMake 生成器 来确定要使用哪个原生构建系统。可以可选地选择一个 额外生成器 作为一些 命令行构建工具生成器 的变体,以生成辅助 IDE 的项目文件。

CMake 生成器是平台特定的,因此每个生成器可能仅在某些平台上可用。cmake(1) 命令行工具的 --help 输出列出了当前平台上可用的生成器。使用其 -G 选项为新的构建树指定生成器。cmake-gui(1) 在创建新的构建树时提供交互式生成器选择。

CMake 生成器

命令行构建工具生成器

这些生成器支持命令行构建工具。为了使用它们,必须从一个命令行提示符启动 CMake,该提示符的环境已经为所选的编译器和构建工具配置好。

Makefile 生成器

Ninja 生成器

IDE 构建工具生成器

这些生成器支持集成开发环境 (IDE) 项目文件。由于 IDE 会配置自己的环境,因此可以从任何环境启动 CMake。

Visual Studio 生成器

其他生成器

额外生成器

自 3.27 版本起废弃: 对“额外生成器”的支持已被废弃,并将在 CMake 的未来版本中移除。IDE 可以使用 cmake-file-api(7) 来查看 CMake 生成的项目构建树。

cmake(1) 命令行工具 --help 输出中列出的一些 CMake 生成器 可能有指定辅助 IDE 工具的额外生成器的变体。此类生成器名称的形式为 <extra-generator> - <main-generator>。以下额外生成器是 CMake 已知的。