CMAKE_GENERATOR_PLATFORM¶
版本 3.1 中新增。
用户提供的特定于生成器的目标平台规范。
一些 CMake 生成器支持向原生构建系统提供目标平台名称,以选择编译器工具链。如果用户指定了平台名称(例如通过 cmake -A
选项或通过 CMAKE_GENERATOR_PLATFORM
环境变量),则该值将在此变量中可用。
此变量的值不应由项目代码修改。由 CMAKE_TOOLCHAIN_FILE
变量指定的工具链文件可以初始化 CMAKE_GENERATOR_PLATFORM
。一旦给定的构建树使用此变量的特定值进行了初始化,更改该值将导致未定义的行为。
平台规范仅在特定生成器上受支持
对于 VS 2005 及更高版本的 Visual Studio 生成器,此选项指定目标架构。
对于
Green Hills MULTI
,此选项指定目标架构。
有关允许的平台名称,请参阅原生构建系统文档。
Visual Studio 平台选择¶
Visual Studio 生成器 支持使用以下形式之一的平台规范
platform
platform[,key=value]*
key=value[,key=value]*
platform
指定目标平台(VS 目标架构),例如 x64
、ARM64
或 Win32
。选定的平台名称在 CMAKE_VS_PLATFORM_NAME
变量中提供。
key=value
对以逗号分隔的列表形式,指定平台选择的特定于生成器的详细信息。支持的对有
version=<version>
在 3.27 版本中新增。
指定要使用的 Windows SDK 版本。VS 2015 及更高版本在面向 Windows 或 Windows 应用商店时支持此功能。CMake 将把
CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION
变量设置为选定的 SDK 版本。<version>
可以是以下之一10.0
指定可以使用任何 10.0 SDK 版本,并让 Visual Studio 选择一个。VS 2019 及更高版本支持此功能。
10.0.<build>.<increment>
指定精确的 4 部分 SDK 版本,例如
10.0.19041.0
。必须安装指定版本的 SDK。它不能超过CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION_MAXIMUM
的值(如果该变量已设置)。8.1
指定 8.1 SDK 版本。VS 2015 始终支持此功能。在 VS 2017 及更高版本上,必须安装 8.1 SDK。
如果未指定
version
字段,CMake 将按照CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION
变量文档中的描述选择一个版本。