ROS2 安装指南(Ubuntu 22.04+Humble)

一、环境说明

  • 操作系统:Ubuntu 22.04 LTS(Jammy)
  • ROS2 版本:Humble(长期支持版,支持至 2027)
  • 安装方式:APT 官方源安装(推荐)

二、系统更新

1.设置语言环境

首先检查本地语言环境是否支持UTF-8编码,可调用如下指令检查并设置UTF-8编码:

复制代码
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  # 验证设置是否成果
2.启动Ubuntu universe存储库

通过如下命令检查是否已经启动了Ubuntu universe存储库:

复制代码
apt-cache policy | grep universe
 500 http://us.archive.ubuntu.com/ubuntu jammy/universe amd64 Packages
     release v=22.04,o=Ubuntu,a=jammy,n=jammy,l=Ubuntu,c=universe,b=amd64

如果没有如上所示的输出,那么请调用如下命令启动Ubuntu universe存储库:

复制代码
sudo apt install software-properties-common
sudo add-apt-repository universe
3.安装基础工具:
复制代码
sudo apt update && sudo apt install -y software-properties-common curl gnupg lsb-release

三、添加 ROS2 软件源

1. 添加 GPG 密钥

复制代码
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key \
-o /usr/share/keyrings/ros-archive-keyring.gpg

2. 添加软件源

复制代码
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

3. 更新软件列表

复制代码
sudo apt update

四、安装 ROS2

ROS2 提供不同安装版本,根据需求选择:


1. 桌面完整版(推荐)

复制代码
sudo apt install -y ros-humble-desktop

包含:

  • RViz2(3D 可视化)
  • rqt 工具集
  • demo 示例
  • 常用功能包

2. 基础版(精简)

复制代码
sudo apt install -y ros-humble-ros-base

包含:

  • 通信库、
  • 消息包、
  • 命令行工具,
  • 但是没有 GUI 工具

适用于:

  • 服务器
  • 嵌入式设备
  • 无 GUI 环境

五、配置环境变量

安装完成后,需要加载 ROS2 环境:

复制代码
source /opt/ros/humble/setup.bash

为了每次打开终端自动生效:

复制代码
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
source ~/.bashrc

六、安装开发工具(推荐)

复制代码
sudo apt install -y python3-colcon-common-extensions python3-rosdep python3-vcstool

初始化 rosdep(依赖管理工具):

复制代码
sudo rosdep init
rosdep update

七、验证安装是否成功

打开两个终端:

1.打开两个终端(可以使用快捷键Ctrl + Alt + T);

2.终端1中输入指令:

复制代码
ros2 run turtlesim turtlesim_node

执行完毕,会启动一个绘有小乌龟的窗口;

3.终端2中输入指令

复制代码
ros2 run turtlesim turtle_teleop_key

执行完毕,可以在此终端中通过键盘控制乌龟运动。

八、常见问题及解决

1. 找不到 ros2 命令

原因:未加载环境变量

解决:

复制代码
sudo rosdep init
rosdep update

2. rosdep 初始化失败

尝试:

复制代码
sudo rosdep init
rosdep update

或检查网络连接。

3. 软件源访问慢

可以考虑使用国内镜像源(如清华、中科大)提升下载速度。

4. 关于卸载(谨慎操作)

ROS2安装完毕之后,如果想卸载ROS2,可以执行如下命令:

复制代码
sudo apt remove ~nros-humble-* && sudo apt autoremove

还可以再删除ROS2对应的存储库:

复制代码
sudo rm /etc/apt/sources.list.d/ros2.list
sudo apt update
sudo apt autoremove
# Consider upgrading for packages previously shadowed.
sudo apt upgrade
相关推荐
CodeYp20198 小时前
第14讲:传输层协议 UDP
linux·udp
北京迅为8 小时前
案例分享 | RK182X算力卡:多路视频VLM监控,四路画面AI同时看懂,一句人话说清现场
linux·人工智能·嵌入式·rk3588·算力卡·rk182x
新*8 小时前
ES 7.17 三节点 Docker 集群接入 IK 自定义词典:一次从丢插件到热更新的完整排障
运维·elasticsearch·docker·中文分词·ik分词
风翼靓崽8 小时前
jenkins搭建与简单使用
运维·jenkins
lzx_00220 小时前
Linux 进程(三) 从进程状态到僵尸进程、孤儿进程
linux·服务器
FlightYe21 小时前
音视频修炼之容器与协议(四):RTSP详解
android·linux·ffmpeg·音视频·dash
刘马想放假1 天前
CANviz 使用指南|Linux 安装、DBC 解码、实时曲线与 J1939 实战
linux·python·websocket
kloc1 天前
聊天室项目入口网关子服务的实现
linux·c++
GeW1 天前
深圳APEC峰会倒计时:数据库与Linux运维的"隐形考场"
linux
梦到啥说啥1 天前
Linux网络编程:UDP网络协议
linux·网络协议·udp