RHEL (RPM 包) [17740]

目前可为 RHEL 8 提供 ROS 2 Humble Hawksbill 的 RPM 包。 [7937]

资源 [7938]

设置区域设置 [7578]

确保您拥有支持 UTF-8 的区域设置。如果您使用的是最小环境(如 Docker 容器),区域设置可能是一些最小化的设置,例如 C。我们使用以下设置进行测试。然而,如果您使用的是不同的 UTF-8 支持的区域设置,也应该没问题。 [7579]

locale  # check for UTF-8

sudo dnf install langpacks-en glibc-langpack-en
export LANG=en_US.UTF-8

locale  # verify settings

设置源 [7943]

您需要启用 EPEL 仓库和 PowerTools 仓库: [7944]

sudo dnf install 'dnf-command(config-manager)' epel-release -y
sudo dnf config-manager --set-enabled powertools

注解

这一步根据你使用的发行版可能会有些不同。请查阅EPEL文档:https://docs.fedoraproject.org/en-US/epel/#_quickstart [7582]

接下来,下载ROS 2的.repo文件: [7945]

sudo dnf install curl
sudo curl --output /etc/yum.repos.d/ros2.repo http://packages.ros.org/ros2/rhel/ros2.repo

然后,更新您的元数据缓存。DNF可能会提示您验证GPG密钥,它应该与位置 https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc 匹配。 [7946]

sudo dnf makecache

安装ROS 2软件包 [7947]

ROS 2包是在经常更新的RHEL系统上构建的。在安装新包之前,建议确保系统已经更新到最新。 [7587]

sudo dnf update

桌面安装(推荐):ROS、RViz、演示、教程。 [7948]

sudo dnf install ros-humble-desktop

ROS-Base安装(基础安装):通信库、消息包、命令行工具。没有GUI工具。 [7949]

sudo dnf install ros-humble-ros-base

环境设置 [7594]

导入设置脚本 [7950]

通过源化以下文件来设置您的环境。 [7596]

# Replace ".bash" with your shell if you're not using bash
# Possible values are: setup.bash, setup.sh, setup.zsh
source /opt/ros/humble/setup.bash

尝试一些示例 [7597]

如果您已经安装了上述``ros-humble-desktop``,您可以尝试一些示例。 [7951]

在一个终端中,先源化设置文件,然后运行C++的``talker``: [7598]

source /opt/ros/humble/setup.bash
ros2 run demo_nodes_cpp talker

在另一个终端中,先源化设置文件,然后运行Python的``listener``: [7599]

source /opt/ros/humble/setup.bash
ros2 run demo_nodes_py listener

你应该看到“talker”说它正在“发布”消息,而“listener”说“我听到了”这些消息。这验证了C++和Python API都正常工作。太棒了! [7600]

安装后的下一步 [7601]

继续进行:doc:教程和演示,以配置你的环境,创建自己的工作空间和包,并学习ROS 2的核心概念。 [7602]

其他RMW实现(可选) [7603]

ROS 2默认使用的中间件是``Fast DDS``,但中间件(RMW)可以在运行时进行替换。请参阅:doc:指南 <../How-To-Guides/Working-with-multiple-RMW-implementations>`以了解如何使用多个RMW。 `[7952]

故障排除 [7611]

可以在此处找到故障排除技术:此处[7953]

卸载 [7613]

如果您需要卸载ROS 2或在已从二进制文件安装后切换到基于源代码的安装,请运行以下命令: [7954]

sudo dnf remove ros-humble-*