找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

3432

积分

0

好友

451

主题
发表于 6 天前 | 查看: 88| 回复: 0

技术分享开场装饰图案

想要上手机器人开发,第一步往往是搭建环境。ROS2作为目前主流的机器人操作系统,其安装过程虽不复杂,但细节之处常有“坑点”。本文将以 ROS2 Humble Hawksbill 在 Ubuntu 22.04 (Jammy Jellyfish) 上的安装为例,分享从系统配置到环境验证的完整流程,并记录下笔者亲身踩过的“坑”及解决方案,帮助你顺利完成安装。

两种主流安装方案概览

在开始具体步骤前,先了解两种常见的安装途径:

方案一:一键安装工具
对于新手或希望快速上手的用户,可以使用如“鱼香ROS一键安装”这类工具。它们封装了大部分步骤,简单快捷。网上教程众多,此处不再赘述。

方案二:手动安装(本文重点)
一键工具虽然方便,但知其然更应知其所以然。手动安装能让你更透彻地理解ROS2的依赖和环境配置,遇到问题也更容易排查。笔者最初也使用了一键工具,但后来决定重新走一遍手动流程,于是便有了这篇记录。


手动安装ROS2 Humble详细步骤

第一步:替换系统APT源为国内镜像

国内网络环境访问Ubuntu官方源可能较慢,建议先替换为阿里云等国内镜像源,以加速后续的包下载。

  1. 编辑系统源列表文件:
    sudo nano /etc/apt/sources.list
  2. 将文件原有内容注释或替换为以下阿里云源配置:
    deb https://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
    deb-src https://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
    deb https://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
    deb-src https://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
    deb https://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
    deb-src https://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
    # deb https://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
    # deb-src https://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
    deb https://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
    deb-src https://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse

避坑提示:笔者曾尝试不替换官方源,结果在安装ROS2依赖时,部分软件包从官方源下载失败。因此,除非网络条件极佳,否则建议在第一步就完成源的替换。

第二步:配置基础系统环境

  1. 更新系统包列表并升级现有软件
    这是一个好习惯,能确保系统处于最新状态。
    sudo apt update && sudo apt upgrade -y
  2. 安装必要的工具
    例如 curl,后续步骤会用到。
    sudo apt install curl
  3. 设置UTF-8语言环境(如果尚未设置):
    这有助于避免后续可能出现的字符编码问题。
    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

第三步:添加ROS2官方GPG密钥与软件源

这是最关键也最容易出错的一步。

  1. 添加GPG密钥
    该密钥用于验证软件包的真实性和完整性,是APT安全机制的要求。

    sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
    • 作用:数字签名验证,确保软件包来自官方且未被篡改。
    • 路径/usr/share/keyrings/ 是Ubuntu存放可信GPG密钥的标准目录。

    避坑提示:起初担心从GitHub下载密钥会慢或失败,便尝试寻找国内镜像提供的密钥地址(如 https://mirrors.tuna.tsinghua.edu.cn/ros/ros.key)。结果 apt update 始终报错。后来发现该镜像当时并未提供 ros.key 文件,导致指定的URL不存在。实际上,从官方地址下载密钥的速度通常可以接受。

  2. 添加ROS2软件源
    软件源(Repository)是集中管理软件包的仓库。这里我们使用阿里云的ROS2镜像加速下载。

    echo “deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] https://mirrors.aliyun.com/ros2/ubuntu $(lsb_release -cs) main” | sudo tee /etc/apt/sources.list.d/ros.list
    • 命令解析
      • [arch=$(dpkg --print-architecture)]:自动检测并匹配当前系统架构(如amd64, arm64)。
      • signed-by=...:指定上一步导入的GPG密钥路径,进行包验证。
      • https://mirrors.aliyun.com/ros2/ubuntu:使用阿里云的ROS2镜像地址。
      • $(lsb_release -cs):自动获取当前Ubuntu的系统代号(如 jammy)。
      • /etc/apt/sources.list.d/ros.list:APT专门用于管理第三方源的配置文件目录。
    • 避坑提示
      1. 注意URL中是 ros2 而不是 ros。笔者曾参考某教程错误地写成了 ros,导致该源地址不存在(因为ROS1不支持Ubuntu 22.04),apt update 自然失败。
      2. 曾有过一个设想:既然已经将系统源换成了阿里云Ubuntu源,是否可以不额外添加ROS2源,直接从中安装ROS2?经过测试,不行。标准的Ubuntu镜像源不包含ROS2软件包,必须显式添加ROS2专用的软件源。

第四步:安装ROS2 Humble

  1. 更新软件包索引
    添加新源后,必须更新本地的包索引,使其知晓新的软件来源。
    sudo rm /var/lib/apt/lists/* -vf  # 可选,强制清除旧的索引缓存
    sudo apt update
  2. 选择安装版本
    • 桌面完整版 (推荐):包含ROS、RViz、演示工具和图形化工具。
      sudo apt install -y ros-humble-desktop
    • 基础版:仅包含ROS核心库、构建工具和通信层,不包含GUI工具。
      sudo apt install -y ros-humble-ros-base

第五步:配置环境变量

安装完成后,需要让系统知道ROS2命令的位置。

  1. 临时生效(仅当前终端会话):
    source /opt/ros/humble/setup.bash
  2. 永久生效(添加到用户shell配置文件中):
    将环境变量设置命令添加到 ~/.bashrc 文件中,这样每次打开新终端都会自动配置好ROS2环境。
    echo “source /opt/ros/humble/setup.bash” >> ~/.bashrc
    source ~/.bashrc  # 立即生效当前终端的配置

完成以上步骤后,你可以在终端输入 ros2 --help 来验证安装是否成功。

附:Ubuntu 22.04 常用软件安装小贴士

在机器人开发环境之外,你或许还需要一些日常软件。例如,在Ubuntu上安装微信或WPS Office,可以遵循以下步骤:

  1. 从官方网站下载对应的Linux版(.deb格式)安装包。
  2. 通过U盘或SCP等方式将其传输到Ubuntu系统中。
  3. 在终端中导航到安装包所在目录,依次执行以下命令安装依赖和软件:
    sudo apt install libgtk2.0-0
    sudo apt install libatomic1
    sudo dpkg -i WeChatLinux_x86_64.deb   # 请替换为你的微信安装包实际文件名
    sudo dpkg -i wps-office_*.deb         # 请替换为你的WPS安装包实际文件名

    如果 dpkg 安装过程中报告依赖问题,可以运行 sudo apt install -f 来修复。

总结

手动安装ROS2的过程,本质上是对Linux软件包管理(APT)、数字签名验证和系统环境配置的一次实践。虽然步骤略显繁琐,但每一步都有其意义,理解它们有助于你在后续的开发和调试中更加得心应手。希望这篇结合了实战经验与官方文档要点的指南,能帮助你顺利跨越ROS2入门的第一道门槛。

如果你在安装过程中遇到了本文未涵盖的问题,欢迎在技术社区(如 云栈社区)中交流探讨,共同解决。




上一篇:2026年网络流行词预测:“Share Chill”恰如中年开发者所需的松弛感
下一篇:Vim 9.2 正式发布:脚本引擎革新,支持 Wayland 与现代剪贴板
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-2-23 11:43 , Processed in 0.575260 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表