ROS Learning-002 beginner_Tutorials 如何添加ROS环境变量 和 如何更新ROS源代码
ROS Indigo beginner_Tutorials 之 添加环境变量 和 更新ROS源代码的命令
我使用的虚拟机软件:VMware Workstation 11
使用的Ubuntu系统:Ubuntu 14.04.4 LTS
ROS 版本:ROS Indigo
如何添加 ROS 环境变量
在搭建环境变量前,我们现在先检查一下,看看 ROS 环境变量有没有在系统环境变量中:
$ export | grep ROS
如你得到下面的出现信息,说明,ROS 已经被添加到系统的环境变量里面的。不需要再添加了,就可以可以直接跳过添加环境变量这步,直接进行下一步。
declare -x ROSLISP_PACKAGE_DIRECTORIES=""
declare -x ROS_DISTRO="indigo"
declare -x ROS_ETC_DIR="/opt/ros/indigo/etc/ros"
declare -x ROS_MASTER_URI="http://localhost:11311"
declare -x ROS_PACKAGE_PATH="/opt/ros/indigo/share:/opt/ros/indigo/stacks"
declare -x ROS_ROOT="/opt/ros/indigo/share/ros"
如果什么都没有,我们必须对 ROS 进行配置环境变量,才可以在终端中使用 ROS 的相关命令和工具。
新建一个中终端,我们可以使用下面的指令来给当前终端窗口添加环境变量: (# : 为指令模板 。 $ : 为真正的例子 ) 如果你安装的 ROS 是 indigo 版的 就可以使用第2句:
# source /opt/ros/<distro>/setup.bash
$ source /opt/ros/indigo/setup.bash
这样,我们使用 export | grep ROS 来查看一下环境变量是否添加成功,可以看到已经添加成功了。
但是我们使用 source 这个 Ubuntu 指令来添加环境变量有一个缺点: 它只作用于当前终端,如果我们在重新按住键盘组合键: Ctrl+Alt+T ,重新打开一个新的终端,我们使用 export | grep ROS 命令来查看当前终端上的环境变量我们依然得到下面的结果:
所以,也就是说,我们每新打开一个终端,都到去执行:source /opt/ros/indigo/setup.bash 这个命令来给当前终端添加环境变量。这样的做法岂不是违背的 DRY原则 ( Don’t repest yours! )。 所以,我们有更好的方法: 随便打开一个终端:
$ echo "source /opt/ros/indigo/setup.bash" >> ~/.bashrc
这句话的意思是:将source /opt/ros/indigo/setup.bash这句话 ,添加到 ~/.bashrc 文件中。.bashrc 文件中终端的启动文件,我们将这句话添加到启动文件中的效果就是,我们每次新打开一个终端,都会自动执行这句话。
上面这句话,还不作用于当前终端,所以,我们使用 export | grep ROS 来查看当前的环境变量,应该是什么都没有的:
我们当前终端关闭,重现在开始,重新打开的终端,都会自动添加 ROS 的环境变量:
介绍一个 ROS 命令 — 更新ROS源代码
$ rosdep update
运行输出:
reading in sources list data from /etc/ros/rosdep/sources.list.d
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml
Query rosdistro index https://raw.githubusercontent.com/ros/rosdistro/master/index.yaml
Add distro "groovy"
Add distro "hydro"
Add distro "indigo"
Add distro "jade"
Add distro "kinetic"
updated cache in /home/aobosir/.ros/rosdep/sources.cache
这个命令相当于 Linux 使用 sudo apt-get update 来更新系统软件。它的作用就是更新 ROS 系统中的软件包。(因为 ROS 系统不像 Ubuntu 系统那样更新的速度快( Ubuntu 系统 1周更新一次),而 ROS 系统更新的速度相比之下慢多了,我认为主要的原因是,它刚刚进入人们的视野中不久。我相信就凭 ROS 系统的争夺优点,它会不断的发展,以后它的更新速度也会想 Ubuntu 系统那样快。我这里指的更新是系统里面的软件进行更新,而不是系统的更新:win7->win8 ,不是这样的。)
ROS Learning-002 beginner_Tutorials 如何添加ROS环境变量 和 如何更新ROS源代码的更多相关文章
- linux下查看和添加PATH环境变量
linux下查看和添加PATH环境变量 $PATH:决定了shell将到哪些目录中寻找命令或程序,PATH的值是一系列目录,当您运行一个程序时,Linux在这些目录下进行搜寻编译链接. 编辑你的 PA ...
- Mac 可设置环境变量的位置、查看和添加PATH环境变量
Mac 启动加载文件位置(可设置环境变量) ------------------------------------------------------- (1)首先要知道你使用的Mac OS X是什 ...
- ***LINUX添加PHP环境变量:CentOS下将php和mysql命令加入到环境变量中
CentOS系统下如何将PHP和mysql命令加入到环境变量中,在Linux CentOS系统上 安装完php和MySQL后,为了使用方便,需要将php和mysql命令加到系统命令中,如果在没有添加到 ...
- Mac可设置环境变量的位置、查看和添加PATH环境变量
Mac 启动加载文件位置(可设置环境变量) 首先要知道你使用的 Mac OS X 是什么样的 Shell,使用命令 echo $SHELL 如果输出的是:csh 或者是 tcsh,那么你用的就是 C ...
- linux下添加PATH环境变量
添加PATH环境变量,第1种方法:[root@lx_web_s1 ~]# export PATH=/usr/local/webserver/mysql/bin:$PATH 再次查看: [root@lx ...
- Mac下添加java环境变量
2015年4月22号更新: 发现一个坑:最近发现有同事按照本文方式配置jdk环境变量一直不成功,后来发现他是使用了“Oh-My-Zsh”,配置文件的路径不是/etc/profile或~/.bash_p ...
- Linux 添加到环境变量
在Linux下使用源码安装软件的时候,通常只能在软件安装目录下使用该软件命令,这样太麻烦,我们希望全局使用,可以将软件安装路径添加到系统环境变量里. 添加环境变量有2种方法: 1. 使用export命 ...
- mac 添加环境变量(jmeter添加至环境变量中)
Mac系统的环境变量,加载顺序为:a. /etc/profileb. /etc/pathsc. ~/.bash_profiled. ~/.bash_logine. ~/.profilef. ~/.ba ...
- ubuntu 应用添加进环境变量
BG:公司同事使用的电脑系统大多为windows ,有部分mac和Ubuntu(我就是那个部分Ubuntu),某些情况为了统一格式,便下载了一些解压即可使用的软件,但是每次点开文件夹然后点开程序很繁琐 ...
随机推荐
- java对Hbase的基本操作
1.新建一个普通java项目,把${hbase}/lib/目录下的jar包全部导入 2.导出jar文件如下 3.运行 注意:需要先把jar文件导入到hbase路径里去,然后运行相应的类 4.查看数据 ...
- codeigniter教程:Codeigniter出现Unable to connect to your databas
Codeigniter出现A Database Error Occurred错误 下午把项目构建到服务器上的时候,codeigniter竟然出现了 a database error occurred ...
- ios --- 调用系统"设置"里的功能(转)
安装后第一次运行软件时,系统会弹出提示用户是否允许软件获取当前位置,如果用户不允许的话,之后运行时系统不会在弹出提示设置,这点很不方便,有个解决办法是给用户一个选项,调出iphone中“设置”定位服务 ...
- RedHat5.8 编译内核驱动 合成initrd.img
/******************************************************************* * RedHat5.8 编译内核驱动 合成initrd.img ...
- LeetCode 688. Knight Probability in Chessboard
原题链接在这里:https://leetcode.com/problems/knight-probability-in-chessboard/description/ 题目: On an NxN ch ...
- LeetCode Reshape the Matrix
原题链接在这里:https://leetcode.com/problems/reshape-the-matrix/#/description 题目: In MATLAB, there is a ver ...
- 利用PIL添加水印
转:http://www.jb51.net/article/66542.htm
- loopqueue
import java.util.Arrays; public class loopQueue <E>{ public Object[] data=null; private int ma ...
- 类和对象(9)—— new和delete
对象动态建立和释放 new 和delete 在软件开发过程中,常常需要动态地分配和撤销内存空间,例如对动态链表中结点的插入与删除.在C语言中是利用库函数malloc和free来分配和撤销内存空间的.C ...
- ORA-12514: TNS: no listener 解决方案
服务端:oracle 11g 客户端: pl/sql 问题描述: 用客户端 pl/sql 连接登录的时候,提示 "ORA-12514: TNS: no listener". 在服务 ...