CMAKE_SYSTEM_PREFIX_PATH¶
以分號分隔的列表,指定安裝前綴詞,供 find_package()
、 find_program()
、 find_library()
、 find_file()
和 find_path()
指令搜尋。每個指令會加入適當的子目錄(例如 bin
、 lib
或 include
),如同其各自的文件中所指定。
預設情況下,這包含目前系統的系統目錄、 CMAKE_INSTALL_PREFIX
和 CMAKE_STAGING_PREFIX
。安裝和暫存前綴詞可以透過在第一個 project()
呼叫之前設定 CMAKE_FIND_NO_INSTALL_PREFIX
變數來排除。
包含在 CMAKE_SYSTEM_PREFIX_PATH
中的系統目錄通常是包含已安裝軟體的位置。例如,UNIX based 平台的 /usr/local
。除了標準平台位置之外,CMake 也會根據環境變數將值加入到 CMAKE_SYSTEM_PREFIX_PATH
。CMake 使用的環境變數和搜尋位置可能會隨著時間演進,因為平台及其慣例也會演進。以下提供 CMake 搜尋的環境變數和位置的指示性列表,但它們可能會變更
- CrayLinuxEnvironment
ENV{SYSROOT_DIR}/
ENV{SYSROOT_DIR}/usr
ENV{SYSROOT_DIR}/usr/local
- Darwin
ENV{SDKROOT}/usr
當未明確指定CMAKE_OSX_SYSROOT
時。
- OpenBSD
ENV{LOCALBASE}
- Unix
使用 conda 編譯器時的
ENV{CONDA_PREFIX}
- 使用 MinGW 工具鏈的 MSYSTEM 環境
在 3.28 版本中新增。
ENV{MSYSTEM_PREFIX}/local
ENV{MSYSTEM_PREFIX}
- Windows
ENV{ProgramW6432}
ENV{ProgramFiles}
ENV{ProgramFiles(x86)}
ENV{SystemDrive}/Program Files
ENV{SystemDrive}/Program Files (x86)
CMAKE_SYSTEM_PREFIX_PATH
不 打算讓專案修改;請使用 CMAKE_PREFIX_PATH
來達到此目的。
另請參閱 CMAKE_SYSTEM_INCLUDE_PATH
、 CMAKE_SYSTEM_LIBRARY_PATH
、 CMAKE_SYSTEM_PROGRAM_PATH
和 CMAKE_SYSTEM_IGNORE_PATH
。