Ubuntu18系统执行catkin_make提示缺失catkin_pkg模块报错求助
错误原因
报错核心是编译过程调用了Python3执行ROS的包解析脚本,但当前Python3环境未安装catkin_pkg依赖。ROS Melodic(对应Ubuntu 18.04的ROS版本)默认适配Python2,如果你将系统默认Python版本切换为Python3,或者编译配置指定了Python3解释器,就会触发该依赖缺失问题。
修复步骤
- 第一步:安装Python3版本的catkin相关依赖
执行终端命令:
安装完成后重新执行sudo apt update sudo apt install -y python3-catkin-pkg python3-catkin-pkg-modules python3-rospkg-modulescatkin_make看是否恢复正常。 - 第二步:如果安装依赖后依然报错,先校验ROS环境是否正确加载
执行命令加载ROS全局环境:
再执行source /opt/ros/melodic/setup.bashcatkin_make测试。 - 第三步:如果仍有问题,可指定ROS默认的Python2.7解释器编译
先清理之前编译生成的缓存文件:
再执行带Python版本指定的编译命令:rm -rf ~/catkin_ws/build ~/catkin_ws/devel
该方式会强制使用ROS Melodic适配的Python版本编译,规避Python3的依赖缺失问题。catkin_make -DPYTHON_EXECUTABLE=/usr/bin/python2.7
内容的提问来源于stack exchange,提问作者Akash
相关产品推荐
相关产品推荐

