ubuntu20.04安装ROS及常见问题
一、ubuntu安装参考(双系统)
1.ios镜像官网下载地址:
https://releases.ubuntu.com/?_ga=2.239339907.1841863782.1655435189-566057495.1655435189
2.安装盘制作参考:https://blog.csdn.net/YIBO0408/article/details/123937450
,需一16GB以上U盘,备份好数据,制作安装盘会格式化U盘。
3.ubantu安装(视频P8):https://www.bilibili.com/video/BV1554y1n7zv?p=8&spm_id_from=333.880.my_history.page.click&vd_source=2f483c10d6639558c6ea8053d0733383
3.分区方案(与教程博客不同,共80GB),视物理机内存大小而定:
- 系统分区EFI:500MB
- 内存交换空间SWAP:16GB(16384MB,与物理机的内存一致)
- /根挂载点:30GB(16384MB)
- /home挂载点:剩余空间(约34GB)
4.双系统删除ubantu:http://t.csdn.cn/V7971
二、ROS安装参考(Ubuntu 20.04 LTS (Focal Fossa))
1.安装参考视频:
https://www.bilibili.com/video/BV1Bf4y1a7z1?spm_id_from=333.1007.top_right_bar_window_history.content.click&vd_source=2f483c10d6639558c6ea8053d0733383
2.主要安装命令
(1)sudo gedit /etc/apt/suorce.list
(2)sudo apt-get update
(3)sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/
lsb_release -cs main" > /etc/apt/sources.list.d/ros-latest.list'
(4)sudo apt install curl # if you haven't already installed curl
(5)sudo apt install curl # if you haven't already installed curl
(6)curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -Command 'curl' not found, but can be installed with:sudo apt install curl
(7)sudo apt install curl # if you haven't already installed curl
(8)sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 Executing: /tmp/apt-key-gpghome.IH9NjNokSv/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
(9)sudo apt update
(10)sudo apt install ros-noetic-desktop-full
三、ROS安装常见问题及解决方案
1.更新软件源后,使用sudo apt-get update
出现E: 仓库 “http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu jammy Release” 没有 Release 文件。
错误。
- 方案1:更换软件源。参考:
http://t.csdn.cn/j9NkQ
- 方案2:方案1更换了其他的源也无法解决时,可能是ubuntu版本与软件源对应的版本不符合,即ubuntu版本可能是最新版,而镜像源中还没有与之适配的内容。重新安装低一版本的ubuntu即可。
- eg:Ubuntu 22.04 LTS (Jammy Jellyfish) 版本(2022年4月发布)会出现该问题,换为:Ubuntu 20.04 LTS (Focal Fossa)版本(2020年发布)即可解决,且适配现网上大部分参考教程。
- 不同的ubuntu版本(大版本)对应不同的ROS版本,如表1所示。反应在安装ROS时的命令不同,eg:对于20.04,使用命令:
sudo apt install ros-noetic-desktop-full
。
表1 ubuntu版本对应的ROS版本
ubuntu版本 | ROS版本 |
---|
20.04 | noetic |
18.04 | lemodic |
16.04 | kinetic |
14.04 | indigo |
2.更新软件源sudo apt-get update
时出现:没有数字签名,如图1所示。
图1 没有数字签名
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
3.使用sudo apt install ros-noetic-desktop-full
安装ROS时有软件包无法下载,如图2所示。
图2 安装ROS部分软件包无法下载
- 更换软件镜像源。原为清华大学源,更换为中科大源后解决,具体操作为:
(1)打开ubantu的软件与更新,选择ubantu软件。
(2)将下载自设为其他站点,选择中国科技大学镜像源(…ustc.edu…),如图3所示。
(3)关闭,并选择重新载入软件。
图3 更换软件源为中科大镜像
4.使用sudo rosdep init
无法下载ROS的rosdep依赖包,如图4所示。
图4 ROS无法下载rosdep依赖包
- 需连接外网,国内可通过先在国内网站下载rosdep后解压到ROS目录下。
- 下载rosdep:
http://h.xxlab.vip/download/rosdep.zip
- 解压:在下载文件的目录下右键打开终端,如图5所示。输入:
sudo unzip rosdep.zip -d /opt/rosdep
图5 rosdep下载目录
- 修改
__init__.py
文件
(1)打开__init__.py
:sudo gedit /usr/lib/python3/dist-packages/rosdistro/__init__.py
(2)修改第68行为:DEFAULT_INDEX_URL = 'file:///opt/rosdep/rosdistro/master/index-v4.yaml'
,如图6所示。
图6 修改__init__.py文件
- 修改
rep3.py
(1)打开:sudo gedit /usr/lib/python3/dist-packages/rosdep2/rep3.py
(2)修改第39行为:REP3_TARGETS_URL = 'file:///opt/rosdep/rosdistro/master/releases/targets.yaml'
,如图7。
图7 修改rep3.py文件
- 修改
sources_list.py
(1)打开:sudo gedit /usr/lib/python3/dist-packages/rosdep2/sources_list.py
(2)修改第72行为:DEFAULT_SOURCES_LIST_URL = 'file:///opt/rosdep/rosdistro/master/rosdep/sources.list.d/20-default.list'
,如图8。
图8 修改sources_list.py
感谢文中各参考资料提供的有用信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)