说明

这些是在我个人学习ROS1(Melodic/Ubuntu18)过程中碰到的一些问题,在此记录仅供参考。理论上来说适用于大多数较新ROS1版本。

catkin_make编译成功,但rosrun找不到package

问题

[rospack] Error: package 'xxxxxx' not found

解决

这个问题是由于当前环境没有添加正确的环境变量路径导致的,一种方法是立刻执行source:

source ./devel/setup.bash

此时再次尝试rosrun,就可以运行了。


但这种方法会导致重启后还需要重新source,因此如果你打算长期使用此工作空间,建议直接修改~/.bashrc,添加source命令(注意使用绝对路径)。

命名空间std_msgs没有成员String

问题

解决

添加一行include:

#include <std_msgs/String.h>