CMAKE_SYSTEM_NAME

CMake 将要构建的操作系统名称。有关操作系统版本,请参阅 CMAKE_SYSTEM_VERSION 变量。

请注意,在脚本模式下运行时,CMAKE_SYSTEM_NAME 默认不设置任何值,因为它不构建任何东西。

主机构建的系统名称

CMAKE_SYSTEM_NAME 默认设置为与 CMAKE_HOST_SYSTEM_NAME 变量相同的值,以便构建目标主机系统。

交叉编译的系统名称

首次配置新的构建树时,可以显式设置 CMAKE_SYSTEM_NAME 以启用交叉编译。在这种情况下,CMAKE_SYSTEM_VERSION 变量也必须显式设置。

CMake 已知的系统名称

以下是可能的取值列表,每个取值都与相应的操作系统或环境相关联。

名称

ADSP

模拟设备音频数字信号处理

AIX

IBM Unix 操作系统

Android

Android 操作系统

ARTOS

微控制器操作系统

BeOS

个人电脑操作系统(已停产)

BlueGeneL

Blue Gene/L 静态环境

BlueGeneP-dynamic

Blue Gene/P 动态环境

BlueGeneP-static

Blue Gene/P 静态环境

BlueGeneQ-dynamic

Blue Gene/Q 动态环境

BlueGeneQ-static

Blue Gene/Q 静态环境

BSDOS

BSD 操作系统(已停产)

Catamount

Cray XT 系列操作系统

CrayLinuxEnvironment

Cray Linux 环境

CYGWIN

Windows 的 Cygwin 环境

Darwin

Apple 桌面操作系统(macOS、OS X 等)

DOS

MS-DOS 或兼容系统

DragonFly

BSD 衍生操作系统

eCos

实时嵌入式操作系统

Emscripten

WebAssembly 编译器工具链

Euros

嵌入式设备的实时操作系统

FreeBSD

FreeBSD 操作系统

Fuchsia

Google 基于 Zircon 内核的操作系统

Generic-ADSP

通用 ADSP(音频 DSP)环境

Generic-ELF

通用 ELF(可执行和可链接格式)环境

Generic

某些平台,例如裸机嵌入式设备

GHS-MULTI

Green Hills Software MULTI 环境

GNU

基于 GNU/Hurd 的操作系统

Haiku

受 BeOS 启发的 Unix 操作系统

HP-UX

惠普 Unix

iOS

Apple 移动电话操作系统

Linux

所有基于 Linux 的发行版

Midipix

Windows 的 POSIX 兼容层

MirBSD

MirOS BSD 操作系统

MP-RAS

MP-RAS UNIX 操作系统

MSYS

MSYS 环境 (MSYSTEM=MSYS)

NetBSD

NetBSD 操作系统

OpenBSD

OpenBSD 操作系统

OpenVMS

惠普的 OpenVMS 操作系统

OS2

OS/2 操作系统

OSF1

Compaq Tru64 UNIX (前称 DEC OSF/1, Digital Unix)(已停产)

QNX

黑莓的类 Unix 操作系统

RISCos

RISC OS 操作系统

SCO_SV

SCO OpenServer 5

SerenityOS

类 Unix 操作系统

SINIX

SINIX 操作系统

SunOS

Oracle Solaris 和所有 illumos 操作系统

syllable

Syllable 操作系统

Tru64

Compaq Tru64 UNIX (前称 DEC OSF/1) 操作系统

tvOS

Apple TV 操作系统

ULTRIX

Unix 操作系统(已停产)

UNIX_SV

SCO UnixWare(7 之前版本)

UnixWare

SCO UnixWare 7

visionOS

Apple 混合现实操作系统

WASI

WebAssembly 系统接口

watchOS

Apple Watch 操作系统

Windows

Windows 桌面操作系统

WindowsCE

Windows Embedded Compact

WindowsPhone

Windows 移动电话操作系统

WindowsStore

通用 Windows 平台应用程序

Xenix

SCO Xenix Unix 操作系统(已停产)

平台特定说明

  • MSYS2 的 msys/cmake 软件包 (/usr/bin/cmake) 仅在 MSYSTEM=MSYS 环境下工作,系统名为 MSYS。在其他环境(如 MSYSTEM=MINGW64)下,请使用其他软件包,例如 mingw64/mingw-w64-x86_64-cmake (/mingw64/bin/cmake),它针对 MSYSTEM=MINGW64,系统名为 Windows

  • Cygwin 的 cmake 软件包 (/usr/bin/cmake) 使用系统名称 CYGWIN。即使在 Cygwin 环境下运行,非 Cygwin 的 Windows 版 CMake (例如 $PROGRAMFILES/CMake/bin/cmake) 也使用系统名称 Windows