************************************
我是ubuntu18.04 ROS-Melodic
*************************************
ImportError: dynamic module does not define module export function (PyInit_cv_bridge_boost)
这个报错是在ubuntu18.04 ROS-Melodic中的python文件,文件头加入了
#!/usr/bin/env python3
由于在ROS-Melodic中cv_bridge需要在python2中编译,故出现了问题如下:
import rospy
import cv2
from cv_bridge import CvBridge, CvBridgeError
from sensor_msgs.msg import Image
如上的库,1、2、4行想在python3中编译,3行想在python2中编译。咱们的目的是3行我也想在python3中编译。
解决:
查遍csdn,有的文章没有细节,导致成功都是瞎猫碰到死耗子,他好使了,你未必好使,而且留下烂摊子。
1.首先必须进入python3环境而且必须确认你的python3的版本!
ROS修改:ubuntu系统更改默认python版本(重要操作)_机械专业的计算机小白的博客-优快云博客https://blog.youkuaiyun.com/wzfafabga/article/details/127191057?spm=1001.2014.3001.5502不会看上文,灵活切换python版本,是ROS-melodic的重要操作。
做完上部分操作就可以通过如下命令快速切换:
sudo update-alternatives --config python
有 2 个候选项可用于替换 python (提供 /usr/bin/python)。
选择 路径 优先级 状态
------------------------------------------------------------
0 /usr/bin/python2 2 自动模式
1