CMAKE_INSTALL_PREFIX

install() 使用的安装目录。

当调用 make install 或构建 INSTALL 目标时,该目录会被添加为所有安装目录的前缀。

此变量的默认值如下:

  • 3.29 版本新增:如果设置了 CMAKE_INSTALL_PREFIX 环境变量,其值将用作此变量的默认值。

  • Windows 上为 c:/Program Files/${PROJECT_NAME}

  • UNIX 平台上为 /usr/local

请参阅 CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT,了解项目如何选择自己的默认值。

在 UNIX 上,可以使用 DESTDIR 机制将整个安装重定向到暂存区域。有关更多信息,请参阅 DESTDIR 环境变量。

安装前缀也会被添加到 CMAKE_SYSTEM_PREFIX_PATH 中,以便 find_package()find_program()find_library()find_path()find_file() 将在该前缀下搜索其他软件。在首次调用 project() 之前,将 CMAKE_FIND_NO_INSTALL_PREFIX 设置为 TRUE 可以禁用此行为。

注意

使用 GNUInstallDirs 模块可以为安装目录布局提供 GNU 风格的选项。

CMAKE_INSTALL_PREFIX 可以在配置构建树时进行定义,以设置其安装前缀。或者,在使用 cmake(1) 命令行工具的 --install 模式时,可以使用 --prefix 选项指定不同的前缀。

cmake --install . --prefix /my/install/prefix

注意

当项目使用 GNUInstallDirs 模块时,会有一些 特殊情况,这些情况是在配置阶段根据 CMAKE_INSTALL_PREFIX 变量的值进行评估的。即使在安装期间使用了替代的 --prefix 选项,这些结果依然有效。

另请参阅