点击电脑左下角的九个小点,如下所示,点击之后:
在上方的搜索框中输入“软件和更新”:
打开后按照下图配置(确保勾选了“restricted"、"universe”和“multivers”)
官网的会出现很多问题,所以我用了国内镜像的:
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'
这是最新的密钥,其他好多密钥会导致后续更新Debian软件包的时候出现错误已经不可用了:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F42ED6FBAB17C654
(因密钥问题而不能更新源库的 可参考https://blog.csdn.net/asdli/article/details/91978069 既前往http://wiki.ros.org/kinetic/Installation/Ubuntu 找到set up your key,新终端运行更新公钥的指令)
sudo apt-get update
如果出现错误(.1):
W: GPG 错误:http://mirrors.ustc.edu.cn/ros/ubuntu bionic InRelease: 由于没有公钥,无法验证下列签名: NO_PUBKEY F42ED6FBAB17C654
E: 仓库 “http://mirrors.ustc.edu.cn/ros/ubuntu bionic InRelease” 没有数字签名。
N: 无法安全地用该源进行更新,所以默认禁用该源。
N: 参见 apt-secure(8) 手册以了解仓库创建和用户配置方面的细节。
(请参考文末的错误调试(1)密钥不可用部分,有对应的解决办法)
sudo apt-get install ros-melodic-desktop-full
然后是漫长的等待,加载很多东西
在开始使用ROS之前,需要先初始化rosdep。rosdep能够轻松地安装要编译的源代码的系统依赖关系,并且需要在ROS中运行一些核心组件:
sudo rosdep init
出现错误(.2): sudo: rosdep:找不到命令
解决办法如下:
需要输入:
sudo apt install python-rosdep2
sudo rosdep init
再次出现错误(.3):
ERROR: default sources list file already exists:
/etc/ros/rosdep/sources.list.d/20-default.list
Please delete if you wish to re-initialize
执行以下命令,删除已经存在的初始化文件:
sudo rm /etc/ros/rosdep/sources.list.d/20-default.list
然后再重新运行
sudo rosdep init
又出现错误(.4)
ERROR: cannot download default sources list from:
https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
Website may be down.
解决办法(1):
sudo apt-get install ca-certificates
执行以上命令后再运行
sudo rosdep init
ERROR: error loading sources list:
('The read operation timed out',)
解决办法:
原因是操作超时,用网络用的是wifi,换成手机热点就好了。
解决完全部错误之后,继续:
rosdep update
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
1、开一个终端
roscore
2、再开一个终端
rosrun turtlesim turtlesim_node
3、再打开一个终端
rosrun turtlesim turtle_teleop_key
在第三个终端里上下左右键控制小海龟行动即可,按q键退出。
以上,全部ros安装完成!
出现:
W: GPG 错误:http://mirrors.ustc.edu.cn/ros/ubuntu bionic InRelease: 由于没有公钥,无法验证下列签名: NO_PUBKEY F42ED6FBAB17C654
E: 仓库 “http://mirrors.ustc.edu.cn/ros/ubuntu bionic InRelease” 没有数字签名。
N: 无法安全地用该源进行更新,所以默认禁用该源。
N: 参见 apt-secure(8) 手册以了解仓库创建和用户配置方面的细节。
(1)更新密钥:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys XXXXXXX
(其中XXXXXX表示出现粪土的签名,需要对应更换之前你用的密钥)即可,之后
sudo apt-get update
就行
如果还不成功,就更换直接更换最新的密钥:
(2)更换最新的密钥:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F42ED6FBAB17C654
(本人使用的这个最新密钥是可以用的,不会出现问题)
安装ROS时执行到sudo rosdep init时出现sudo rosdep:找不到命令提示
解决办法如下:
需要输入:
sudo apt install python-rosdep2
sudo rosdep init
再次出现错误(.3):
ERROR: default sources list file already exists:
/etc/ros/rosdep/sources.list.d/20-default.list
Please delete if you wish to re-initialize
执行以下命令,删除已经存在的初始化文件:
sudo rm /etc/ros/rosdep/sources.list.d/20-default.list
然后再重新运行
sudo rosdep init
又出现错误(.4)
ERROR: cannot download default sources list from:
https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
Website may be down.
解决办法(1):
sudo apt-get install ca-certificates
执行以上命令后再运行
sudo rosdep init
ERROR: error loading sources list:
('The read operation timed out',)
解决办法:
原因是操作超时,用网络用的是wifi,换成手机热点就好了。