Ubuntu16.04安装ROS-kinetic

Ubuntu16.04安装ROS-kinetic

ubuntu16.04安装ros是一个基本操作,网上有众多教程,但其中有几个坑,因此记录一下完整的安装过程,备查。

1、添加镜像源

ros镜像源有国外的和国内的,国外的为ros官方镜像源,国内的有中国科学技术大学(USTC)镜像源,中山大学镜像源和易科机器人实验室镜像源。使用ros官方镜像源的时候会导致接下来sudo apt-get update的时候特别缓慢,即使巧妙的上网也不行,因此推荐使用国内镜像源,具体用哪个就看哪个地理位置距离你较近。本次安装使用的USTC镜像源,添加命令如下:

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'

2、添加镜像源对应密匙

不同镜像源对应的密匙不同,USTC密匙添加命令如下:

wget https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -O - | sudo apt-key add -

3、更新软件源

sudo apt-get update

4、安装完整版桌面ros

sudo apt-get install ros-kinetic-desktop-full

5、初始化rosdep

sudo rosdep init
rosdep update

这里是一个大坑,很多时候安装都会卡在这里,在sudo rosdep init后报错

ERROR: cannot download default sources list from:
https://raw.github.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
Website may be down.

遇见这个问题,首先要确定你的网络是否有问题,点击报错信息中的网址,如果你的网络没有问题,应该可以打开如下图所示:
Ubuntu16.04安装ROS-kinetic_第1张图片
如果网络有问题,请先巧妙的上网
如果网络没问题,参照一下办法进行尝试:
(1)之前曾经安装过 ROS 系统的某个版本,按照提示删除已经存在的初始化文件即可:

sudo rm /etc/ros/rosdep/sources.list.d/20-default.list

(2)ca-certificates问题,证书不对,重新安装证书

sudo apt-get install ca-certificates

(3)系统时间同步问题,需要同步系统时间

sudo apt-get install ntpdate
sudo ntpdate cn.pool.ntp.org
sudo hwclock --systohc

(4)ssl certs问题(本次安装即这个问题)

sudo c_rehash /etc/ssl/certs 
sudo -E rosdep init

(5)python-rosdep问题

sudo apt-get install python-rosdep

(6)如果仍然无效,则直接在/etc目录下添加内容/ros/rosdep/sources.list.d/20-default.list

cd /ros/rosdep/sources.list.d(具体目录要看你的用户名)
sudo gedit 20-default.list

复制 https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list 里面的内容进去,保存,退出,重新执行sudo rosdep init。

6、设置环境变量

echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc

7、验证

输入roscore能够成功运行即完成安装:

zhangman@zhangman-G3-3579:~$ roscore
... logging to /home/zhangman/.ros/log/6d418b44-8259-11ea-985c-5076af821e32/roslaunch-zhangman-G3-3579-18033.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://zhangman-G3-3579:42187/
ros_comm version 1.12.14


SUMMARY
========

PARAMETERS
 * /rosdistro: kinetic
 * /rosversion: 1.12.14

NODES

auto-starting new master
process[master]: started with pid [18044]
ROS_MASTER_URI=http://zhangman-G3-3579:11311/

setting /run_id to 6d418b44-8259-11ea-985c-5076af821e32
process[rosout-1]: started with pid [18057]
started core service [/rosout]

参考文章

http://www.bubuko.com/infodetail-3320563.html?cf_chl_jschl_tk=1bf00e99ec2a1242932d84373326bcfde0775dfa-1587312786-0-AUqBDVqkYHyFE9Ni0aExIzvxuyF4ONbdWyJrEMLFJy8JzAGpMeoGW42s3LQpRDjca91s0YkyNpL0u32Kpxerj-fVlFgTsfsO-TpQg1OlEVQEiBOiUdogWw4gRAZbNb7x48nqsjtVF5ZH7hAYFfXdjkjR6WSy6EoLR_wglkosuCp3H-PsGs8cuPkURyhn5fSquvhn2igofwyquDfEM-EqRct-oVLUHllMBqHC21I2gGG7PMxZLAYUkIgPrlXTVD2xhumABRLmDCcVJE_DGG4ctsFXincaxeparcSHHmtSVxaCFoPNSi1YrV3BBK5ZnJUfDQ

你可能感兴趣的:(安装教程)