在终端中输入:
sudo apt update
或
sudo apt-get update
错误提示:
获取:1 http://mirrors.ustc.edu.cn/kali kali-rolling InRelease [30.6 kB]
错误:1 http://mirrors.ustc.edu.cn/kali kali-rolling InRelease
由于没有公钥,无法验证下列签名: NO_PUBKEY ED444FF07D8D0BF6
忽略:2 http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu xenial InRelease
命中:3 http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu xenial Release
正在读取软件包列表… 完成
N: 忽略‘ros-latest.list122’(于目录‘/etc/apt/sources.list.d/’),鉴于它的文件扩展名无效
W: GPG 错误:http://mirrors.ustc.edu.cn/kali kali-rolling InRelease: 由于没有公钥,无法验证下列签名: NO_PUBKEY ED444FF07D8D0BF6
E: 仓库 “http://mirrors.ustc.edu.cn/kali kali-rolling InRelease” 没有数字签名。
N: 无法安全地用该源进行更新,所以默认禁用该源。
N: 参见 apt-secure(8) 手册以了解仓库创建和用户配置方面的细节。
如图:
解决方法:
1、找到软件与更新
2、在 “其他软件” 里把出现错误的网址前面的对号去掉
3、保存设置,之后再次输入
sudo apt update
或
sudo apt-get update
即可解决。
在终端中输入:
sudo apt install ros-melodic-desktop-full
错误提示:
[sudo] amanda 的密码:
正在读取软件包列表… 完成
正在分析软件包的依赖关系树
正在读取状态信息… 完成
N: 忽略‘ros-latest.list122’(于目录‘/etc/apt/sources.list.d/’),鉴于它的文件扩展名无效
E: 无法定位软件包 ros-melodic-desktop-full
解决方法:
ubuntu版本与ros版本不对应,我用的是Ubuntu16.04,对应的应该是kinetic。
改为:
sudo apt install ros-kinetic-desktop-full
此外:Ubuntu18.04对应melodic
Ubuntu20.04对应Noetic
在终端中输入:
source ~/.bashrc
错误提示:
bash: /opt/ros/melodic/setup.bash: 没有那个文件或目录
原因:
执行命令:echo “source /opt/ros/melodic/setup.bash” >> ~/.bashrc时,忘记更改ros版本
解决方法:
1、在终端中输入:
gedit ~/.bashrc
2、在打开的文件中找到错误提示里的/opt/ros/melodic/setup.bash删去此行,保存退出。
更改ros版本之后再次执行命令:
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
错误消失。
在终端中输入:
sudo rosdep init
错误提示:
Traceback (most recent call last):
File “/usr/bin/rosdep”, line 6, in
from pkg_resources import load_entry_point
File “/usr/lib/python2.7/dist-packages/pkg_resources/init.py”, line 2927, in
@_call_aside
File “/usr/lib/python2.7/dist-packages/pkg_resources/init.py”, line 2913, in _call_aside
f(*args, **kwargs)
File “/usr/lib/python2.7/dist-packages/pkg_resources/init.py”, line 2940, in _initialize_master_working_set
working_set = WorkingSet._build_master()
File “/usr/lib/python2.7/dist-packages/pkg_resources/init.py”, line 637, in _build_master
return cls._build_from_requirements(requires)
File “/usr/lib/python2.7/dist-packages/pkg_resources/init.py”, line 650, in _build_from_requirements
dists = ws.resolve(reqs, Environment())
File “/usr/lib/python2.7/dist-packages/pkg_resources/init.py”, line 829, in resolve
raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The ‘rospkg>=1.3.0’ distribution was not found and is required by rosdep
解决方法:
1、先安装pip:
sudo apt-get install python-pip
2、然后使用pip安装rosdep
sudo pip install rosdep
3、再次初始化:
sudo rosdep init
在终端中输入:
sudo rosdep init
错误提示:
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
错误消失
此方法还可以解决错误提示:
N: 忽略‘ros-latest.list122’(于目录‘/etc/apt/sources.list.d/’),鉴于它的文件扩展名无效
在终端中输入:
roscore
红色警告:
WARNING: ROS_MASTER_URI [http://192.168.43.157:11311] host is not set to this machine
解决方法: 先按Ctrl+C退出
1、在终端输入
ifconfig
2、 打开bashrc文件
gedit ~/.bashrc
3、找到ROS_MASTER_URI=http://192.168.*****:11311,将其改为自己的地址
4、 source一下环境变量
source ~/.bashrc
5、再次执行
roscore
小感想:这只是安装ros时踩过的一大堆坑中的一小部分,实际安装时还遇到了其他的如境外资源被屏蔽、无法下载等一系列各式各样的问题,差点从入门到入土。但是对于大部分的问题,网络上都有很详细的解决方法,我总结的这些是我遇到的部分我还记得的问题。仅供参考!