Ubuntu16使用python3编译cv_bridge

Ubuntu16使用python3编译cv_bridge

  • 系统配置
  • 创建工作空间
  • 下载cv_bridge源码
  • 修改CMakeList.txt
  • 可能遇到的错误1
  • 可能遇到的错误2
  • 参考

系统配置

  • Ubuntu16.04 arm64
  • ROS Kinect
  • 系统自带Python和Python3.5

创建工作空间

mkdir -p catkin_ws/src
cd catkin_ws/src
catkin_init_workspace
cd ..
catkin_make
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc

下载cv_bridge源码

git clone https://github.com/ros-perception/vision_opencv.git src/vision_opencv
cd ~/catkin_ws

修改CMakeList.txt

打开~/catkin_cv_bridge/src/vision_opencv/cv_bridge/CmakeList.txt

将第11行和第14行修改为

find_package(Boost REQUIRED python35)

如果你想使用其他版本的Python编译,那么则修改为其他版本(Python3.7就可以修改为python37),之后进行编译

catkin_make

可能遇到的错误1

Ubuntu16使用python3编译cv_bridge_第1张图片
解决方案:建立软连接

cd /usr/lib/x86_64-linux-gnu
sudo ln -s libboost_python-py35.so libboost_python35.so
sudo ln -s libboost_python-py35.a libboost_python35.a

可能遇到的错误2

Ubuntu16使用python3编译cv_bridge_第2张图片
按照上述报错的位置,将nullptr修改为NULL即可


参考

  1. https://blog.csdn.net/qq_40932565/article/details/112427529
  2. https://blog.51cto.com/u_15478664/4900304

你可能感兴趣的:(机器人,python,ubuntu)