Visual Studio 15 2017

版本 3.7.1 中新增。

生成 Visual Studio 15 (VS 2017) 项目文件。

项目类型

只能生成 Visual C++ 和 C# 项目(以及与 Intel 编译器集成的 Fortran)。不支持其他类型的项目(JavaScript、Powershell、Python 等)。

实例选择

3.11 版本新增。

VS 2017 支持在同一台机器上安装多个版本。CMAKE_GENERATOR_INSTANCE 变量可用于选择其中一个。

平台选择

默认目标平台名称(架构)是 Win32

CMAKE_GENERATOR_PLATFORM 变量可以设置,例如通过 cmake -A 选项,以指定目标平台名称(架构)。例如:

  • cmake -G "Visual Studio 15 2017" -A Win32

  • cmake -G "Visual Studio 15 2017" -A x64

  • cmake -G "Visual Studio 15 2017" -A ARM

  • cmake -G "Visual Studio 15 2017" -A ARM64

版本 4.0 中有改动: 以前,为了兼容 CMake 3.1 之前的版本,可以在生成器名称的末尾可选地指定目标平台名称。此功能已被移除。此功能仅支持以下情况:

Visual Studio 15 2017 Win64

指定目标平台 x64

Visual Studio 15 2017 ARM

指定目标平台 ARM

工具链选择

Visual Studio 15 2017 附带的 v141 工具集默认被选中。CMAKE_GENERATOR_TOOLSET 选项可以设置,例如通过 cmake -T 选项,以指定另一个工具集。

版本 3.8 中新增:对于此版本 Visual Studio 附带的每个工具集,都有编译为 32 位 (x86) 和 64 位 (x64) 主机(独立于它们所针对的架构)的变体。默认情况下,即使在 64 位主机上,此生成器也使用 32 位变体。可以通过向工具集规范添加 host=x86host=x64 来显式请求使用 32 位或 64 位主机工具。有关详细信息,请参阅CMAKE_GENERATOR_TOOLSET 变量。

版本 3.14 中新增: 添加了对 host=x86 选项的支持。