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