You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决编译Lanelet2时CMake找不到boost_python3配置文件的错误

报错原因

Ubuntu 20.04 官方源提供的Boost 1.71版本中,libboost-python-dev包生成的CMake配置文件命名为boost_python38Config.cmake,而Lanelet2的CMake规则默认查找不带版本后缀的boost_python3Config.cmake,因此触发找不到依赖的报错。

解决步骤

按优先级选择以下方法即可:

  • 方法一(最便捷):直接安装匹配命名的boost-python3开发包
    执行安装命令:

    sudo apt install libboost-python3-dev
    

    安装完成后重新执行catkin build即可。

  • 方法二(方法一无效时使用):手动创建配置文件软链接
    进入系统Boost的CMake配置目录,创建不带版本号的配置文件软链接:

    cd /usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/
    sudo ln -s boost_python38Config.cmake boost_python3Config.cmake
    sudo ln -s boost_python38-config.cmake boost_python3-config.cmake
    

    之后清空对应包的编译缓存重新编译:

    cd ~/catkin_ws
    catkin clean -y lanelet2_python
    catkin build
    
  • 方法三(前两种方法都不生效时使用):修改Lanelet2的CMake配置
    找到lanelet2_python功能包下的CMakeLists.txt,将查找boost_python的代码行修改为指定版本:

    find_package(Boost REQUIRED COMPONENTS python38)
    

    若后续更换Python版本,把38改为对应Python的版本号即可,比如Python3.9对应改为python39。

如果使用Python虚拟环境编译,需提前激活虚拟环境,且编译前指定Python路径,避免CMake调用系统默认Python:

catkin config --cmake-args -DPYTHON_EXECUTABLE=$(which python)

内容的提问来源于stack exchange,提问作者hdmapper

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 17:06:08