ubuntu 14.04 (desktop amd 64) 安装和配置ROS Indigo
安装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文件系统了!
ubuntu 14.04 (desktop amd 64) 安装和配置ROS Indigo的更多相关文章
- ubuntu 14.04 (desktop amd 64) 下载
http://cdimage.ubuntu.com/ubuntukylin/releases/14.04/release/
- ubuntu 14.04(desktop amd 64) nginx 安装启动停止
sudo apt-get install nginx 关闭: sudo service nginx stop 启动: sudo nginx
- ubuntu 14.04 (desktop amd 64) 查看配置参数
硬盘型号 sudo hdparm -i /dev/sda |grep "Model" 硬盘数量大小 sudo fdisk -l |grep "Disk /dev/sd ...
- Ubuntu 14.04 下 android studio 安装 和 配置【转】
本文转载自:http://blog.csdn.net/xueshanfeihu0/article/details/52979717 Ubuntu 14.04 下 android studio 安装 和 ...
- (四)Ubuntu 14.04 文件服务器--samba的安装和配置
samba是Linux系统上的一种文件共享协议,可以实现Windows系统访问Linux系统上的共享资源,现在介绍一下如何在Ubuntu 14.04上安装和配置samba一. 一.更新源列表 打开&q ...
- [Linux 小技巧] Ubuntu 14.04 下编译、安装、配置最新开发版 GoldenDict
1. 背景介绍 GoldenDict 是一款非常优秀的跨平台电子词典软件,支持 StarDict.Babylon 等多种词典.其 PC 版基于 Qt 编写,完全免费.开源且没有广告.GoldenDic ...
- ubuntu 14.04 desktop装vnc4server
ubuntu 14.04 desktop上安装vnc4server要装上gnome的一些软件包并修改启动文件~/.vnc/xstartup 问题来源How to make VNC Server wor ...
- 在阿里云Ubuntu 14.04 Linux服务器上安装docker
参考 How To Install and Use Docker: Getting Started 这篇最靠谱的文档在阿里云 Ubuntu 14.04 服务器上成功安装 docker . ---- ...
- Ubuntu 14.04下 Java通用安装方法
参考: 解决Floodlight1.2+Mininet问题及使用安装 Ubuntu下安装JDK1.7图文详解 Ubuntu 14.04下 Java通用安装方法 1.到oracle官网下下载对应jdk包 ...
随机推荐
- 关于Flag的定义
最近在维护项目的代码,发现了由于Flag不一致导致的很多问题,现在对这一问题总结. 1,flag分为两种,可以组合的和不可以组合的.可以组合的flag适合用每一位表示一个含义.不适合组合的flag适合 ...
- [LeetCode] 383. Ransom Note_Easy tag: Hash Table
Given an arbitrary ransom note string and another string containing letters from all the magazines, ...
- sublime text3搭建react native
Sublime Text 3 搭建React.js开发环境 Sublime有很强的自定义功能,插件库很庞大,针对新语言插件更新很快,配合使用可以快速搭建适配语言的开发环境. 1. babel-subl ...
- BabelMap 12.0.0.1 汉化版(2019年3月11日更新)
软件简介 BabelMap 是一个免费的字体映射表工具,可辅助使用<汉字速查>程序. 该软件可使用系统上安装的所有字体浏览 Unicode 中的十万个字符,还带有拼音及部首检字法,适合文献 ...
- 【Redis学习之三】Redis单节点安装
本文介绍两个版本:redis-2.8.18.tar.gz 和 redis-3.0.0-rc2.tar.gz,均采用源码安装方式 一.redis3.0 部署环境 redis-3.0.0-rc2.tar. ...
- Storm集成Siddhi
<Siddhi初探>中我们介绍了Siddhi的基本使用方法,并表示我们将把Siddhi集成到Storm中作为流任务处理引擎.本文将用<Storm初探>中的例子讲解如何集成Sid ...
- 如何用有NFC功能的手机微信给公交卡充值?入口在那里?
如何用有NFC功能的手机微信给公交卡充值?入口在那里? 需要两个前提: 1.NFC功能手机授权同意微信获取权限. 2.打开微信,并把公交卡放在手机背面贴紧. 选择下方的[充值金额],可以是10元.20 ...
- PHP获取6位数随机数,获取redis里面不存在的6位随机数(设置24小时过时)
PHP获取6位数随机数 PHP str_shuffle() 函数str_shuffle() 函数随机打乱字符串中的所有字符. 语法 str_shuffle(string) 参数 描述 string必需 ...
- python之路----TCP与UDP
TCP import socket #tcp协议 sk = socket.socket() # 买手机 创建一个socket对象 sk.bind(('127.0.0.1',8080)) # 给serv ...
- web应用下的安全问题以及tomcat/nginx对应解决方法(持续更新、亲测可解决问题)
最近一券商那边扫描反馈了下面几个非业务型安全漏洞,要求解决,如下: XSS 自己写个脚本response的时候对特殊字符进行了处理,或者网上搜下一堆(不要忘了回车.换行). HTML form wit ...