CMAKE_SYSTEM_PROCESSOR

非交叉编译时,此变量与 CMAKE_HOST_SYSTEM_PROCESSOR 变量具有相同的值。在许多情况下,这将对应于构建的目标架构,但这并非必然。(例如,在 Windows 上,即使使用 MSVC cl 编译器针对 32 位目标,主机也可能是 AMD64。)

交叉编译时,CMAKE_TOOLCHAIN_FILE 应该设置 CMAKE_SYSTEM_PROCESSOR 变量以匹配其指定的目标架构(通过 CMAKE_<LANG>_COMPILER 和可能通过 CMAKE_<LANG>_COMPILER_TARGET)。