如何解决 CMake 错误:找不到 "boost_python3" 提供的包配置文件



我尝试安装lanelet2库根据github安装指南https://github.com/fzi-forschungszentrum-informatik/Lanelet2.

当我执行catkin构建时,我得到以下错误:

Errors     << lanelet2_python:cmake /home/student/catkin_ws/logs/lanelet2_python/build.cmake.000.log
CMake Error at /usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/BoostConfig.cmake:117 (find_package):
Could not find a package configuration file provided by "boost_python3"
(requested version 1.71.0) with any of the following names:
boost_python3Config.cmake
boost_python3-config.cmake
Add the installation prefix of "boost_python3" to CMAKE_PREFIX_PATH or set
"boost_python3_DIR" to a directory containing one of the above files.  If
"boost_python3" provides a separate development package or SDK, be sure it
has been installed.

我的操作系统是Ubuntu 20.04 with ROS noetic。在Python版本3.8.10的venv中执行构建。

python命令指向python3我还安装了以下依赖项:

sudo apt-get install ros-noetic-rospack ros-noetic-catkin ros-noetic-mrt-cmake-modules
sudo apt-get install libboost-dev libeigen3-dev libgeographic-dev libpugixml-dev libpython3-dev libboost-python-dev python3-catkin-tools

有人知道如何解决这个错误吗?

参见neutrinoyu的评论https://github.com/ethz-asl/kalibr/issues/368#issuecomment-651726289

/kalibr/Schweizer-Messer/numpy_eigen/cmake/add_python_export_library.cmake:89
change
list(APPEND BOOST_COMPONENTS python3)
to
list(APPEND BOOST_COMPONENTS python)