gpt4 book ai didi

boost - 为什么 cmake 会忽略 Boost_NO_BOOST_CMAKE 环境变量?

转载 作者:行者123 更新时间:2023-12-05 07:50:52 24 4
gpt4 key购买 nike

下面的命令很适合我:

cmake ../ -DBoost_NO_BOOST_CMAKE=BOOL:ON

即 cmake 忽略系统 BoostConfig.cmake,这是我需要的。但是如果我尝试通过环境变量做同样的事情:

Boost_NO_BOOST_CMAKE=ON cmake ../

cmake 仍然读取 BoostConfig.cmake 并且我收到以下错误:

CMake Error at /usr/lib64/boost/BoostConfig.cmake:64 (get_target_property):

我也尝试过设置为 TRUEBOOL:ON 等。使用 cmake 版本 3.3.1。有什么提示吗?

更新

添加

set(Boost_NO_BOOST_CMAKE TRUE)

into CMakeList.txt 效果很好,但添加到 PreLoad.cmake 的同一行却不行。在第二种情况下,运行带有跟踪和调试选项的 cmake 会给出以下前几行日志:

Configuring Debug su3-dense ...
Running with debug output on.
Running with trace output on.
/home/langr/projects/su3dense/PreLoad.cmake(1): set(Boost_NO_BOOST_CMAKE TRUE )
/home/langr/projects/su3dense/CMakeLists.txt(1): cmake_minimum_required(VERSION 3.0.0 )
...

因此,显然处理了 PreLoad.cmake 文件并设置了变量 Boost_NO_BOOST_CMAKE。为什么此设置会被忽略?

更新 2

我终于通过写作让它工作了

set(Boost_NO_BOOST_CMAKE TRUE CACHE BOOL "" FORCE)

进入PreLoad.cmake

最佳答案

创建一个包含以下内容的 PreLoad.cmake 文件最终对我有用:

set(Boost_NO_BOOST_CMAKE TRUE CACHE BOOL "" FORCE)

感谢 Florian 的帮助。

关于boost - 为什么 cmake 会忽略 Boost_NO_BOOST_CMAKE 环境变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35750089/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com