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

macOS下通过Homebrew安装Boost.Python解决ROS Melodic编译报错

macOS 11.5.1 编译ROS Melodic cv_bridge Boost.Python缺失解决方案

你遇到的问题是新版Homebrew已经移除了适配Python2.7的boost-python包,原有--with-python编译参数也已废弃,可根据是否需要Python接口选择以下方案解决:

方案1:无需cv_bridge Python接口(快速生效)

如果你的使用场景不需要通过Python调用cv_bridge,直接禁用Python绑定即可跳过boost-python依赖:

  • 重新执行编译命令时,额外添加-DBUILD_PYTHON_SUPPORT=OFF参数即可,完整命令如下:
./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release -DCMAKE_MACOSX_RPATH=ON -DCMAKE_INSTALL_RPATH=$HOME/ros_catkin_ws/install_isolated/lib -DCMAKE_PREFIX_PATH="/usr/local/Cellar/qt@5/5.15.2;${HOME}/ros_catkin_ws/install_isolated" -DCMAKE_CXX_STANDARD=17 --pkg cv_bridge -DBUILD_PYTHON_SUPPORT=OFF

方案2:需要cv_bridge Python2接口

需手动编译与本地Boost版本(1.76.0)匹配的boost-python组件:

  • 下载Boost 1.76.0源码包到本地
  • 解压源码包后进入对应目录
  • 执行配置脚本指定Python2.7路径:
./bootstrap.sh --with-python=/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 --with-python-root=/Library/Frameworks/Python.framework/Versions/2.7
  • 仅编译安装boost_python组件:
./b2 --with-python install
  • 验证安装结果,执行以下命令如果输出对应库文件则安装成功:
ls /usr/local/lib | grep boost_python27
  • 重新执行原有cv_bridge编译命令即可,若仍提示找不到boost_python,可在编译命令末尾添加参数指定cmake配置路径:
-Dboost_python_DIR=/usr/local/lib/cmake

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 11:18:02