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 版本中更改:之前,为了与 3.1 之前的 CMake 版本兼容,可以在生成器名称的末尾可选地指定目标平台名称。此功能已被移除。仅支持以下情况:

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 位变体。可以显式请求使用 32 位或 64 位主机工具,方法是在工具集规范中添加 host=x86host=x64。有关详细信息,请参阅 CMAKE_GENERATOR_TOOLSET 变量。

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