ROS Indigo beginner_Tutorials-02 创建ROS工作空间

我使用的虚拟机软件:VMware Workstation 11
使用的Ubuntu系统:Ubuntu 14.04.4 LTS
ROS 版本:ROS Indigo

在我们这套 ROS 教程中涉及的和编写的所有 ROS 代码需要有一个地方存放它,这个地方叫做工作空间。可以说,这个工作空间应该是一个大的集合。当我们要编译程序的时候,我们是对整个工作空间进行编译的。它里面可以存放许多软件包(软件包:程序包,也可以叫一个工程)。 软件包之间都是相互独立的。可以这么说:工作空间相对于一栋居民楼,软件包相对于一个居民楼中的一户居民房。

我们在用户根路径(~/)里创建一个文件来作为日后本套教程的 ROS 工作空间:(我们为了方便大家学习,就将这个工作空间的名字命名为 ROS 官方教程里的名字一样:catkin_ws。 我想随便说一下,为什么官方要使用这个名字: 先说这个 catkin : 意思是 ; 而这个ws : 是WorkSpace的英文缩写。ROS 系统的源代码就是这个公司发明的)

$ mkdir -p ~/catkin_ws/src

每学过 Linux 常用指令的童靴注意了: -p 这个参数 可以允许你创建一个带有子目录的文件夹。

这里写图片描述

来到这个主路径内: 编译它, 会新出现一些文件(启动文件 和 编译过渡文件)

$ cd ~/catkin_ws/
$ catkin_make

这里写图片描述

接下来,我们将这个 catkin_ws 工作空间的路径添加的环境变量中,这样 ROS终端可以再任意路径下使用这个catkin_ws里面的可执行文件和在任何路径都可以使用roscd 来打开这个 catkin_ws 工作空间里的程序开发包:

$ source ~/catkin_ws/devel/setup.bash

我说过了,这样做,添加的环境变量只能在当前终端有效。如果重新打开新的终端,这个环境变量就没有了。

这里写图片描述

是不是,没有前面添加的环境变量:/home/aobo/catkin_ws/src

$ echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc 

上面这句话就可以做到,重新打开一个新的终端,/home/aobo/catkin_ws/src 存在在环境变量里。

这里写图片描述

重新打开终端, 看看效果:

这里写图片描述

上面这个命令里面有这样一个文件: .bashrc 。 我们打开它看看里面有什么:
使用 cat 命令,将 .bashrc 文件里的内容全部打印到当前终端上:

这里写图片描述

这里写图片描述

上面 $echo “……” 命令的作用: 将 source ~/cat…. 这句话 添加到 .bashrc 文件中。
.bashrc 文件是启动文件)