CMake搜索Boost1.57失败及解决

本文介绍了当使用CMake 3.1.0时遇到无法找到Boost 1.57的情况,并提供了具体的解决方案。通过手动添加Boost版本信息到FindBoost.cmake脚本中,成功解决了这一问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

CMake更新到3.1.0,Boost更新到1.57,结果CMake搜索Boost失败:

  Unable to find the Boost header files.  Please set BOOST_ROOT to the root
  directory containing Boost or BOOST_INCLUDEDIR to the directory containing
  Boost's headers.
 
已设置环境变量 BOOST_ROOT = C:\Boost

查看 FindBoost.cmake 脚本,发现它仅搜索已知的版本,而最新版 1.57 还未添加:

  set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS}
    "1.56.0" "1.56" "1.55.0" "1.55" "1.54.0" "1.54"
    "1.53.0" "1.53" "1.52.0" "1.52" "1.51.0" "1.51"
    "1.50.0" "1.50" "1.49.0" "1.49" "1.48.0" "1.48" "1.47.0" "1.47" "1.46.1"

添加 “1.57” 后即成功。

FindBoost.cmake 应该添加 Boost 未来版本才好。


make PythonAPI Util/BuildTools/Linux.mk:163: 警告:覆盖关于目标“downloadplugins”的配方 Util/BuildTools/Linux.mk:142: 警告:忽略关于目标“downloadplugins”的旧配方 Setup.sh: boost-1.80.0-c10 already installed. Setup.sh: rpclib-v2.2.1_c5-c10 already installed. Setup.sh: Retrieving Google Test. 正克隆到 'gtest-1.8.1-c10-source'... remote: Enumerating objects: 369, done. remote: Counting objects: 100% (369/369), done. remote: Compressing objects: 100% (320/320), done. remote: Total 369 (delta 122), reused 88 (delta 37), pack-reused 0 (from 0) 接收对象中: 100% (369/369), 1.06 MiB | 1.57 MiB/s, 完成. 处理 delta 中: 100% (122/122), 完成. 注意:正在切换到 '2fe3bd994b3189899d93f1d5a881e725e046fdc2'。 您正处于分离头指针状态。您可以查看、做试验性的修改及提交,并且您可以在切换 回一个分支时,丢弃在此状态下所做的提交而不对分支造成影响。 如果您想要通过创建分支来保留在此状态下所做的提交,您可以通过在 switch 命令 中添加参数 -c 来实现(现在或稍后)。例如: git switch -c <新分支名> 或者撤销此操作: git switch - 通过将配置变量 advice.detachedHead 设置为 false 来关闭此建议 Setup.sh: Building Google Test with libc++. CMake Error at /usr/share/cmake-3.16/Modules/CMakeDetermineCCompiler.cmake:49 (message): Could not find compiler set in environment variable CC: /Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v17_clang-10.0.1-centos7/x86_64-unknown-linux-gnu/bin/clang. Call Stack (most recent call first): CMakeLists.txt:7 (project) CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage -- Configuring incomplete, errors occurred! See also "/home/mec/carla/Build/gtest-1.8.1-c10-libcxx-build/CMakeFiles/CMakeOutput.log". make: *** [Util/BuildTools/Linux.mk:142:setup] 错误 1
最新发布
06-24
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值