CMAKE_FIND_NO_INSTALL_PREFIX

CMAKE_INSTALL_PREFIXCMAKE_STAGING_PREFIX 变量中排除值,这些值会被添加到 CMAKE_SYSTEM_PREFIX_PATH 中。CMake 默认会将这些项目目标前缀添加到 CMAKE_SYSTEM_PREFIX_PATH 中,以便支持构建一系列依赖包并将它们安装到公共前缀中。将 CMAKE_FIND_NO_INSTALL_PREFIX 设置为 TRUE 以抑制此行为。

在首次调用 project()enable_language() 命令时,会初始化 CMAKE_SYSTEM_PREFIX_PATH。因此,必须在此之前设置 CMAKE_FIND_NO_INSTALL_PREFIX 才能生效。用户可以将该变量设置为命令行中的缓存条目以实现此目的。

请注意,由于其他原因,例如与 CMake 安装相同的前缀,或作为内置系统前缀,这些前缀仍然可能被搜索到。