安装ROS

配置Ubuntu的软件源

配置Ubuntu要求允许接受restricted、universe和multiverse的软件源,可以根据下面的链接配置:

https://help.ubuntu.com/community/Repositories/Ubuntu

打开 SoftWare & Updates 选择清华源
更新software updater

配置成如下图所示即可,一般情况下,这些配置都是默认的。设置为清华源,然后关闭时会提示更新,更新完毕即可。

1.

2.

软件源配置

添加软件源到sources.list

设置软件源的代码如下:

$ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu trusty main" > /etc/apt/sources.list.d/ros-latest.list'

一旦添加了正确的软件源,操作系统就知道去哪里下载程序,并根据命令自动安装软件。

设置密钥

$ wget http://packages.ros.org/ros.key -O - | sudo apt-key add -

安装

首先确认你的Debian的软件包索引是最新的。Debian计划是一个致力于创建一个自由操作系统的合作组织。我们所创建的这个操作系统名为 Debian。Debian系统目前采用Linux内核或者FreeBSD内核。

$ sudo apt-get update

在ROS中有许多不同的函数库和工具,建议是完全安装,也可以根据自己的要求分别安装。完全安装时的工具包括ROS、rqt、可视化环境rviz、通用机器人库robot-generic libraries、2D(如stage)和3D(如Gazebo)仿真环境2D/3D simulators、导航功能包集navigation and 2D/3D(移动、定位、地图绘制、机械臂控制)、感知库perception(如视觉、激光雷达、RGB-D摄像头等)。

$ sudo apt-get install ros-indigo-desktop-full

初始化rosdep

rosdep不仅能够使你更方便的安装一些系统依赖程序包,而且ROS的一些主要部件的运行也需要rosdep。

$ sudo rosdep init
$ rosdep update

安装rosinstall

rosinstall命令是一个使用的非常频繁的命令,使用这个命令可以轻松的下载许多ROS软件包。

$ sudo apt-get install python-rosinstall

设置环境

添加ROS的环境变量,这样,当你打开你新的shell时,你的bash会话中会自动添加环境变量。

$ echo "source /opt/ros/indigo/setup.bash" >> ~/.bashrc
# 使环境变量设置立即生效
$ source ~/.bashrc

配置你的ROS环境

注意:当你用像apt这样的软件包安装管理器安装ROS,那么这些软件包用户是没有权利的去编辑的,当创建一个ROS package和处理一个ROS package时,你应该始终选择一个你有权限工作的目录作为工作目录。

管理你的环境

在安装ROS的时候,你会看到提示:source(命令)几个setup.*sh文件,或者甚至添加sourcing到你的shell启动脚本中。这是必须的,因为ROS依赖于结合使用shell环境的概念上。这使得开发依赖不同版本的ROS或者不同系列的package更加容易。

如果你在寻找或者使用你的ROS package上有问题,请确定的你的ROS环境变量设置好了,检查是否有ROS_ROOT和ROS_PACKAGE_PATH这些环境变量。

$ export | grep ROS

如果没有,你需要source一些setup.*sh文件。

环境设置文件是为你产生的,但是可以来自不同的地方:

  • 使用package管理器安装的ROS package提供setup.*sh文件;
  • rosbuild workspace使用像rosws这样的工具提供setup.*sh文件;
  • setup.*sh文件在编译和安装catkin package时作为副产品创建。

注意:rosbuild和catkin是两种组织和编译ROS代码的方式,前者简单易用,后者更加复杂但是提供更多灵活性尤其是对那些需要去集成外部代码或者想发布自己软件的人。

如果你在Ubuntu上使用apt工具安装ROS,那么你会在'/opt/ros/indigo/'目录中有setup.*sh文件,你可以这样source它们:

$ source /opt/ros/indigo/setup.bash

你每次打开新的shell都需要运行这个命令,如果你把source /opt/ros/indigo/setup.bash添加进.bashrc文件就不必要每次打开一个新的shell都运行这条命令才能使用ROS的命令了。

创建ROS工作环境

对于ROS Groovy和之后的版本可以参考以下方式建立catkin工作环境。在shell中运行:

$ mkdir -p ~/catkin_ws/src
$ cd ~/catkin_ws/src
$ catkin_init_workspace

可以看到在src文件夹中可以看到一个CMakeLists.txt的链接文件,即使这个工作空间是空的(在src中没有package),任然可以建立一个工作空间。

$ cd ~/catkin_ws/
$ catkin_make

catkin_make命令可以非常方便的建立一个catkin工作空间,在你的当前目录中可以看到有build和devel两个文件夹,在devel文件夹中可以看到许多个setup.*sh文件。启用这些文件都会覆盖你现在的环境变量,想了解更多,可以查看文档catkin。在继续下一步之前先启动你的新的setup.*sh 文件。

$ source devel/setup.bash

为了确认你的环境变量是否被setup脚本覆盖了,可以运行一下命令确认你的当前目录是否在环境变量中:

$ echo $ROS_PACKAGE_PATH

输出:

/home/youruser/catkin_ws/src:/opt/ros/indigo/share:
/opt/ros/indigo/stacks

至此,你的环境已经建立好了,可以继续学习ROS文件系统了!

最新文章

  1. 深入浅出HTTP请求(转自http://www.cnblogs.com/yin-jingyu/archive/2011/08/01/2123548.html)
  2. PGPool 配置错误定位 s_do_auth: expecting R got E
  3. canvas简单图片处理(灰色处理)
  4. 莫名其妙MyEclipse
  5. BZOJ3837 : [Pa2013]Filary
  6. HDU 1251-统计难题(Trie)
  7. 问题-delphi无法编辑oracle表
  8. UVA1471( LIS变形)
  9. cocos2dx进阶学习之CCApplication
  10. cpu性能探究 :cache line 原理
  11. DPDK support for vhost-user
  12. HDU1372:Knight Moves(BFS)
  13. 《HiBlogs》重写笔记[1]--从DbContext到依赖注入再到自动注入
  14. 6.19 noip模拟题(题目及解析转自 hzwer 2014-3-15 NOIP模拟赛)
  15. UILabel设定行间距方法
  16. Day17 Django的基础使用和结构
  17. UVA - 11090 - Going in Cycle!!(二分+差分约束系统)
  18. Java 基础 JRE和JDK的区别
  19. Linux(例如CentOS 7)打开TCP 22端口,基于SSH协议
  20. session,cookie,sessionStorage,localStorage的区别

热门文章

  1. Look for the Air Jordan 32 in full family sizing
  2. http协议基础(八)请求首部字段
  3. !! A股历史平均市盈率走势图
  4. 让声音更清晰,用PR去掉视频中的噪音
  5. SQL: 左连接,右连接,内连接,左外连接,右外连接,完全连接
  6. python excel操作单元格复制和读取的两种方法
  7. Shell脚本实现检测某ip网络畅通情况,实战用例
  8. python3.4学习笔记(四) 3.x和2.x的区别,持续更新
  9. python之路----面向对象的继承特性
  10. Linux学习笔记之Linux Centos关闭防火墙