如何解决“每次打开终端启动ROS项目前都要运行一遍source devel/setup.bash”的问题

问题分析

当我们从Github仓库中拉取或自己开发项目时,在新打开的终端中运行节点或启动一整个工程时,如果不source环境变量,那么会出现如下报错:

rosrun   ssr_pkg   chao_node     #运行ssr_pkg包对应的chao_node节点

roslaunch   vehicle_simulator   system_garage.launch    #运行车辆仿真环境的启动文件

 失败案例1——显示包找不到:

如何解决“每次打开终端启动ROS项目前都要运行一遍source devel/setup.bash”的问题_第1张图片

失败案例2——显示启动文件不存在 

如何解决“每次打开终端启动ROS项目前都要运行一遍source devel/setup.bash”的问题_第2张图片 这些都是因为没有加载环境变量:

如何解决“每次打开终端启动ROS项目前都要运行一遍source devel/setup.bash”的问题_第3张图片

我们只需要在工作空间目录下,打开终端,然后先输入:

source   /devel/setup.bash    #加载环境变量

 然后再运行 rosrun或roslaunch,但是这样很麻烦,因为每次打开新的终端都需要先source一下。


解决方法

如果想在终端直接永久加载环境变量,我们只需要在用户主文件夹下,打开.bashrc文件,如果没有,说明未显示隐藏文件,只需按下Ctrl + H,就能显示所有隐藏文件了。

如何解决“每次打开终端启动ROS项目前都要运行一遍source devel/setup.bash”的问题_第4张图片

 然后我们使用vim编辑器或文本编辑器打开.bashrc文件,在最后一行加上工作空间的环境变量:

source    ~/catkin_ws/devel/setup.bash   #加载环境变量,请注意将后面的文件目录改成自己的工作空间目录

我们可以点击进入到项目所在的工作空间目录,然后在这里打开终端,输入pwd获取文件路径,然后路径最后加上/devel/setup.bash即可。

举例说明:

如何解决“每次打开终端启动ROS项目前都要运行一遍source devel/setup.bash”的问题_第5张图片

你可能感兴趣的:(机器人快速入门,ubuntu,机器人,bash)