前言
此教程仅针对ubantu16.04下的ROS安装,不同版本的ubantu对应的ROS版本可以在ROS官网上进行查询,教程内容整理自官方安装指南,有需要者可以此处跳转。
安装ROS
预先准备
-
打开system setting界面中的software&updates
-
勾选所有选项(一般情况下ubantu是默认勾选前四个选项的),展开download from之后选择**others…**进入镜像源设置界面
-
选择select best server之后等待系统自动选择你所在区域的最佳镜像源(也可以直接手动设置常用镜像源,如阿里云和清华镜像源),完毕后点击choose server完成设置
- 系统自动回到上一级页面之后点击close之后选择reload,将会自动加载镜像源,这里可能需要一段时间
正式安装
这里理论上来讲按照官网教程走是没有任何问题的,但是总有像我一样的非洲人被卡在第三步求生不得求死不能:
- 打开终端,输入以下命令行设置sources.list:
sudo sh -c ‘echo “deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main” > /etc/apt/sources.list.d/ros-latest.list’
- 设置keys:
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
前两步结束之后的效果图如下:
- 更新:
sudo apt-get update
然而,到这一步很可能出现如上所示的错误,如果出错了请跳过第四步直接看错误解决,没出错的话就继续第四步,顺便……祝您ROS使用愉快?
- 安装所需版本的ROS,这里给出的是安装完整版的ROS的命令行,如有其他版本需求可以在此跳转查看不同版本的功能的安装命令:
sudo apt-get install ros-kinetic-desktop-full
解决第三步update时Failed to fetch……Hash Sum Mismatch错误
大多数欧皇都可以通过上述教程5分钟之内简单安装ROS,然而非酋的我却总是在sudo apt-get update的时候遇见各种各样的问题,在网上把各种治疗hash sum mismatch的偏方都试了个遍,在此为了方便大众整理了以下我见到过的各种解决方法,大家可以一个一个的试过去,相信总有一款适合你。主要来源可以在此跳转
- 方法一:打开终端,键入以下两个命令行:
sudo apt-get clean
sudo apt-get update --fix-missing
- 方法二:
sudo rm -fR /var/lib/apt/lists/*
sudo mkdir /var/lib/apt/lists/partial
sudo apt-get update
-
方法三:更换其他的镜像源,更换方法和设置方法相同,也是通过system setting里的software&updates进行设置,不过需要注意的是,由于我们之前更改了sources.list所以更换源的时候可能会出现error,如果出现无法更换源的错误的话可以先切换到other software界面(如下图所示)把ros的源取消勾选然后重复前三步(其实error了就表示这个源没有办法完成在这个source取得数据…就不改变那个勾选直接不停换源直到不再报错为止也可以)
-
方法四:然而以上方法都对我并没有任何的作用……,如果你也试到了这里,那告诉你一个非常简单的方法:连接vpn然后换一个国外的镜像源就好了:),真的大写加粗的好用!!那么假如你也和我一样不知道怎么在ubantu连接vpn,以下三个网站按顺序操作一遍即可:添加vpn选项,注册vpn账号(如果已有账号可以略过后面两步,弱渣博主头一次注册vpn,由于害怕无法配合第三个网页的教程不得不注册了这个,什么vpn都可以,能连上就行),连接vpn(注意此教程中的服务器不要填写教程中的216.218.196.193,而是要填写你自己的vpn账号注册时提供给你的服务器编号)