Ubuntu20.04安装ROS Noetic

一、配置镜像源

1.1 设置中科大源
bash 复制代码
sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'
1.2 设置公钥
bash 复制代码
sudo apt install curl 
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

出现 找不到OpenPGP数据 这个报错的时候就挂梯子:

bash 复制代码
export http_proxy=http://172.17.216.239:7897
export https_proxy=http://172.17.216.239:7897

172.17.216.239是主机ip,7897是代理端口

1.3 更新软件包列表
bash 复制代码
sudo apt update

二、安装 ROS

2.1 安装完全版

bash 复制代码
sudo apt install ros-noetic-desktop-full
2.2 设置环境变量
bash 复制代码
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
2.3 下载相关依赖
bash 复制代码
sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential

2.4 rosdep 初始化

bash 复制代码
sudo rosdep init

出现报错就多试几次,可以换换梯子节点

出现 please run rosdep update即初始化成功

2.5 rosdep update 更新

bash 复制代码
rosdep update

超时就多试几次。

出现类似下面的信息即更新成功:

bash 复制代码
ljy@ljy-virtual-machine:~$ rosdep update
reading in sources list data from /etc/ros/rosdep/sources.list.d
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml
Query rosdistro index https://raw.githubusercontent.com/ros/rosdistro/master/index-v4.yaml
Skip end-of-life distro "ardent"
Skip end-of-life distro "bouncy"
Skip end-of-life distro "crystal"
Skip end-of-life distro "dashing"
Skip end-of-life distro "eloquent"
Skip end-of-life distro "foxy"
Skip end-of-life distro "galactic"
Skip end-of-life distro "groovy"
Add distro "humble"
Skip end-of-life distro "hydro"
Skip end-of-life distro "indigo"
Skip end-of-life distro "iron"
Skip end-of-life distro "jade"
Add distro "jazzy"
Add distro "kilted"
Skip end-of-life distro "kinetic"
Skip end-of-life distro "lunar"
Skip end-of-life distro "melodic"
Skip end-of-life distro "noetic"
Add distro "rolling"
updated cache in /home/ljy/.ros/rosdep/sources.cache

三、检验是否安装成功

开三个终端

第一个终端

bash 复制代码
 roscore

第二个终端

bash 复制代码
rosrun turtlesim turtlesim_node

第三个终端

bash 复制代码
 rosrun turtlesim turtle_teleop_key

可以正常通过方向键来控制小海龟的移动。

相关推荐
码上有光1 分钟前
异常和智能指针
java·大数据·c++·servlet·异常·智能指针
RisunJan7 分钟前
Linux命令-semanage(SELinux 策略管理)
linux·运维·服务器
王维同学13 分钟前
[原创][Windows C++]Explorer Shell 扩展、图标覆盖与 COM 服务器定位
c++·windows·注册表
流浪00115 分钟前
Linux系统篇 21:文件(五)——动静态库、ELF 底层原理全解
linux·运维·服务器
code_pgf16 分钟前
C++ 工程架构设计规范
c++·机器人
Dawn-bit22 分钟前
Linux救援模式和系统恢复
linux·运维·服务器·云计算·运维开发
C++ 老炮儿的技术栈22 分钟前
基于MFC+原生GDI手动自绘仪表盘控件
c语言·c++·visual studio·控件·工业控制·gdi·自绘
十八岁牛爷爷27 分钟前
Linux 进程与进程状态・三层级深度解析
linux·运维·服务器
孬甭_29 分钟前
C++ vector
开发语言·c++
小肝一下36 分钟前
3. 单链表
c语言·数据结构·c++·算法·leetcode·链表·dijkstra