分析:报这种错误的原因是 Python 编辑器选择错误了,在该编辑器目录下,系统找不到 ROS 的相关包。
参考理解:Python 如何找包
本人导致产生该错误的原因是,在安装完 ROS 后,本人安装了 Anaconda。导致系统默认的 Python 编辑器发生改变,而在改变后的编辑器中是没有 ROS 相关包的,导致错误产生。
可通过方法二,在创建的时候,人为指定 Python 编辑器;也可以通过方法三,将系统默认的 Python 编辑器改为之前的。
解决方法一:安装
这是因为 catkin 找的的 python 版本为 anaconda 下面的版本,你用 conda list 看看你有没有安装 empy,没有装的话就要在conda里面安装它。
conda install -c conda-forge empy
Solving environment 可能会失败,多试几次就好。实在不行,换防方法二。
解决方法二:改变命令
whereis python
可查看系统 python 所在路径
所以需要改为指定采用下面的命令:
catkin_make -DPYTHON_EXECUTABLE=/usr/bin/python3
结果就一切正常了。
另外这将会配置catkin_make使用Python 3。
以后执行编译就直接$ catkin_make
了;因为首次 catkin-make 已经在 CMakeList 中设定好 python 路径;后边再编译就默认为此路径。
解决方法三:干脆不用anaconda的python环境
把 .bashrc 里面的 export PATH=“/home/用户名/anaconda3/bin:$PATH” 注释掉,再source一下。
本人使用方法一安装成功后没有解决问题,方法二成功解决了问题。