unbantu16.04 linux 版本, ros系统 kinetic版本
1. ros系统可以通过rospack find package_name / rosrun package_name node_name / rospack depends1 package_name 等ros命令执行相应功能。
当前终端在执行了命令 source /opt/ros/kinetic/setup.bash后,就可以使用rosls /roscd/rospack等命令。
这里会有一个问题,这些ros命令只在当前终端有效,在另一个终端如果没有执行source 命令,将无法使用tab补全的功能。
该怎么解决呢?
1) echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc 或者编辑 .bashrc文件在末尾添加source /opt/ros/kinetic/setup.bash
2) source ~/.bashrc //重新执行刚修改过的初始化文件,使之立即生效,不用重新登录。如果退出当前终端,或者重启一个新终端,该命令可以不用。
3) 用export | grep ROS 查看是否配置成功,成功后显示结果如下:
2. 执行了上述操作后,我们可以使用ros命令了,但是我们自己创建的ros工作空间内的包无法找到?
问题原因:在创建ROS工作空间时不是严格按照 $ mkdir -p ~/catkin_ws/src来创建
解决方法:
1) 只在当前终端生效,只需要在创建的工作空间里执行 source devel/setup.bash 就可以了。
2) 如果想在所有终端都生效,编辑 .bashrc文件在末尾添加source /home/"yourself"/catkin_ws/devel/setup.bash, 然后source ~/.bashrc
3) 检查是否生效: echo $ROS_PACKAGE_PATH 或者 export | grep ROS ,查看是否把有/home/"yourself"/catkin_ws/src