第一次安装kinetic时候没有踩过坑,某次没有成功关闭Ubuntu后进入grub无法解决,只好虚拟机中重新安装Ubuntu16.04并安装kinetic,此时出现各种问题,安装过程过于痛苦,便记录下来。主要步骤参考官方网址 http://wiki.ros.org/kinetic/Installation/Ubuntu。
终端输入指令:
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
终端输入指令:
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
更换密钥时出现过公钥不可用的情况:
也采用过网上方法进行更改公钥地址,一直失败也是很绝望…
后续重新启动虚拟机解决问题,也不太清楚具体原因。
终端输入命令:
sudo apt-get update
这部分曾出现过两个问题:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 需要的公钥
详情参考这篇博客。
更新源成功后我们便可以进行ROS的安装,在终端输入如下指令:
sudo apt-get install ros-kinetic-desktop-full
建议安装full,ros-kinetic-desktop和ros-kinetic-desktop-full区别可参考官网说明。在安装过程中,出现依赖XXX,但是它们将不会被安装的错误提醒。
本来采取网上做法:
sudo apt-get install aptitude
sudo aptitude install ros-kinetic-desktop-full
选择Y一路进行下去,但在初始化 rosdep步骤中,出现未找到rosdep指令的报错信息,一脸疑惑,理论上应该在安装ros-kinetic-desktop-full中有包含,手动进行安装rosdep后,在catkin_make时也没有找到指令,于是我放弃了这种做法,寻求他路)
这时候我猜想可能与update没有解决Hash校验的问题有关(此时还没有进行换源尝试),于是将镜像换成清华源,成功解决问题,进入漫长的安装过程。
安装过程可能由于网速原因出现某些失败现象,不用担心,本次安装结束后输入如下两条指令:
sudo apt-get update
sudo apt-get install ros-kinetic-desktop-full
即重新执行安装过程,系统会自动将未成功安装的重新安装,若仍失败可重复执行,网速问题可采取更换为手机热点等形式。安装成功界面:
终端输入指令:
sudo rosdep init
rosdep update
update的时候可能因为网络原因会失败,笔者失败了三次,如果多次失败可尝试换成手机热点进行update操作。
在终端界面输入:
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
sudo apt-get install python-rosinstall
至此,我们ROS的基本安装已经结束了,接下来大家就可以进行ROS 开发空间设置以及各种源码获取和操作啦!
参考博客:
[1]: https://www.cnblogs.com/lishanlei/p/10707819.html
[2]: https://blog.csdn.net/qq_41628231/article/details/81046548?utm_source=blogxgwz6
[3]: https://blog.csdn.net/fb_941219/article/details/93161119
[4]: https://blog.csdn.net/qq_40936141/article/details/86241910