CMAKE_SYSTEM_NAME

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

请注意,当在脚本模式下运行时,CMAKE_SYSTEM_NAME 默认不会被设置,因为它不执行构建操作。

用于主机构建的系统名称

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

用于交叉编译的系统名称

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

CMake 已知的系统名称

以下是 CMake 可识别的系统名称列表,每个名称都与相应的操作系统或环境关联。

名称

ADSP

Analog Devices 音频数字信号处理

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

Hewlett Packard Unix

iOS

Apple 移动电话操作系统

kFreeBSD

带有 GNU 用户空间的 FreeBSD 内核

Linux

所有基于 Linux 的发行版

Midipix

Windows 的 POSIX 兼容层

MirBSD

MirOS BSD 操作系统

MP-RAS

MP-RAS UNIX 操作系统

MSYS

MSYS 环境 (MSYSTEM=MSYS)

NetBSD

NetBSD 操作系统

OpenBSD

OpenBSD 操作系统

OpenVMS

HP 的 OpenVMS 操作系统

OS2

OS/2 操作系统

OSF1

Compaq Tru64 UNIX (前身为 DEC OSF/1, Digital Unix) (已停用)

QNX

BlackBerry 的类 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 环境下运行,Windows 上的非 Cygwin CMake (例如 $PROGRAMFILES/CMake/bin/cmake) 也使用系统名称 Windows