Ubuntu22.04安装ROS2 humble环境

在 Ubuntu 22.04 上安装 ROS 2 Humble Hawksbill(简称 Humble)的官方推荐方式是使用 apt 包管理器安装二进制包。以下是详细步骤:


📌 前提条件

  • 操作系统:Ubuntu 22.04 (Jammy Jellyfish)
  • ROS 2 Humble 是官方支持 Ubuntu 22.04 的版本。

✅ 安装步骤

1. 设置语言环境(可选但推荐)

确保系统使用 UTF-8 编码:

bash 复制代码
sudo apt update && sudo apt install -y locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8
 
2. 添加 ROS 2 软件源
bash 复制代码
# 安装依赖
sudo apt install -y software-properties-common

# 添加 ROS 2 GPG 密钥
sudo apt install -y curl
curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /tmp/ros.key
sudo gpg --dearmor -o /usr/share/keyrings/ros-archive-keyring.gpg /tmp/ros.key

# 添加软件源(Humble)
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

++💡 注意:$(. /etc/os-release && echo $UBUNTU_CODENAME) 会自动替换为 jammy++。

3. 安装 ROS 2 Humble

更新软件包索引并安装:

bash 复制代码
sudo apt update

根据需求选择安装版本:

  • 桌面完整版(推荐用于学习和开发):包含 ROS 2、rqt、rviz、仿真工具等
bash 复制代码
sudo apt install -y ros-humble-desktop
  • 仅 ROS 2 核心(最小安装)
bash 复制代码
sudo apt install -y ros-humble-ros-base
  • 开发工具(可选但推荐)
bash 复制代码
sudo apt install -y python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential
4. 设置环境变量

每次打开新终端都需要 source ROS 2 环境,或将其加入 shell 配置文件:

bash 复制代码
# 临时生效(当前终端)
source /opt/ros/humble/setup.bash

# 永久生效(推荐)
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
source ~/.bashrc

++如果你使用的是 zsh,请将命令添加到 ~/.zshrc 并执行 source ~/.zshrc。++

5. 安装依赖管理工具 rosdep(可选但推荐)
bash 复制代码
sudo rosdep init
rosdep update

++注意:在国内可能因网络问题失败,可使用清华镜像等替代方案。++

🧪 验证安装

打开新终端,运行:

bash 复制代码
ros2 --help

或运行一个简单示例:

bash 复制代码
ros2 run demo_nodes_cpp talker
# 在另一个终端运行
ros2 run demo_nodes_py listener

如果能看到通信信息,说明安装成功!

相关推荐
starvapour14 小时前
Ubuntu系统下基于终端的音频相关命令
linux·ubuntu·音视频
想唱rap15 小时前
线程池以及读写问题
服务器·数据库·c++·mysql·ubuntu
自动化智库21 小时前
库卡机器人定义全局变量
linux·运维·机器人
Learn-Share_HY1 天前
[IT Network]如何在cisco packet tracer建立ssh的連線?
ubuntu·ssh·switch·cisco·networking·packettracer·networktutorial
想唱rap1 天前
线程之条件变量和生产消费模型
java·服务器·开发语言·数据库·mysql·ubuntu
小手智联老徐1 天前
ROS2:与 Gazebo 版本对应关系解析
机器人·ros2·gazebo
Sapphire小蓝1 天前
虚拟机ping不通网络问题解决方案
网络·ubuntu
正经教主1 天前
【docker基础】Ubuntu 安装 Docker 超详细小白教程
ubuntu·docker·eureka
badhope1 天前
Agent智能体全面深入教程:架构、机制与工程实践
人工智能·python·机器人
ZGUIZ1 天前
Ubuntu 25.10 无法外接显示器解决方案
linux·运维·ubuntu