如何在Ubuntu22.04中安装ROS2-Humble

如何在Ubuntu22.04中安装ROS2-Humble

1、首先先确认自己的Ubuntu版本

bash 复制代码
vm@vm:~$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 22.04.5 LTS
Release:	22.04
Codename:	jammy

2、设置语言环境

bash 复制代码
locale  # 检查是否支持 UTF-8
​
sudo apt update && sudo apt install 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
​
locale  # 验证设置是否成果

3、设置软件源

启动Ubuntu universe存储库

bash 复制代码
sudo apt install software-properties-common
sudo add-apt-repository universe

将ROS 2 apt存储库添加到系统,用apt授权我们的GPG密钥

bash 复制代码
sudo apt update && sudo apt install curl gnupg lsb-release -y
## 使用国内镜像(更快更稳定,推荐)
sudo curl -sSL https://mirrors.tuna.tsinghua.edu.cn/rosdistro/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

将存储库添加到源列表

bash 复制代码
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

4、安装Humble

首先更新apt存储库缓存:

bash 复制代码
sudo apt update

然后升级已安装的软件(ROS2软件包建立在经常更新的Ubuntu系统上,在安装新软件包之前请确保您的系统是最新的):

bash 复制代码
sudo apt upgrade

安装桌面版ROS2(建议),包含:ROS、RViz、示例与教程,安装命令如下,如果需要安装其他版本,将下面命令中的humble替换对应的版本号:

bash 复制代码
sudo apt install ros-humble-desktop python3-argcomplete

安装colcon构建工具

bash 复制代码
sudo apt install python3-colcon-common-extensions

5、加载ROS2环境

永久加载(推荐,一劳永逸)

bash 复制代码
## 将初始化命令添加到您的 ~/.bashrc文件中,这样每次打开终端都会自动设置好 ROS 2 环境。
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
## 然后,让更改立即生效:
source ~/.bashrc

6、安装cartographer进行SLAM(额外的)

bash 复制代码
sudo apt install ros-humble-cartographer ros-humble-cartographer-ros
相关推荐
Betelgeuse763 小时前
Django 中间件 4 大钩子 & CBV vs FBV 对比实战
python·中间件·django
草莓熊Lotso3 小时前
【Linux网络】UDP Socket 编程全解析:从回显服务到通用字典服务,从零实现工业级代码
linux·运维·服务器·数据库·c++·单片机·udp
飞鸿踏雪(蓝屏选手)9 小时前
137 ≤ Chrome 主密钥获取研究
c++·chrome·windows·网络安全·逆向分析
92year9 小时前
用Google ADK从零搭一个能调工具的AI Agent:Python实操全过程
python·ai·mcp
woxihuan12345610 小时前
SQL删除数据时存在依赖关系_设置外键级联删除ON DELETE
jvm·数据库·python
Jetev10 小时前
如何确定SQL字段是否为空_使用IS NULL与IS NOT NULL
jvm·数据库·python
蛐蛐蛐10 小时前
昇腾910B4上安装新版本CANN的正确流程
人工智能·python·昇腾
m0_7020365311 小时前
mysql如何处理不走索引的OR查询_使用UNION ALL优化重写
jvm·数据库·python
2401_8463395611 小时前
MySQL在云环境如何选择存储类型_SSD与高性能云盘配置建议
jvm·数据库·python
2601_9577808412 小时前
Claude 4.6 对阵 GPT-5.4:2026 开发者大模型 API 选型深度解析
人工智能·python·gpt·ai·claude