您正在阅读的是旧版本但仍受支持的 ROS 2 文档。 Jazzy.
RHEL(源代码)
系统要求
Humble Hawksbill 目前的目标 Red Hat 平台是
第 2 层:RHEL 8 64 位
根据 REP 2000
系统设置
设置本地语言
确保您的本地语言支持 UTF-8
.如果您所处的是最小化环境(如 docker 容器),则本地化可能是类似以下的最小化环境 C
.我们使用以下设置进行测试。不过,如果您使用的是不同的 UTF-8 支持的本地语言,也不会有问题。
地点 # 检查 UTF-8
苏都 dnf 安装 langpacks-en glibc-langpack-en
出口 朗=en_US.UTF-8 本地语言 # 验证设置
启用所需的存储库
rosdep 数据库包含 EPEL 和 PowerTools 软件库中的软件包,这些软件包默认情况下并未启用。运行
苏都 dnf 安装 'dnf-command(config-manager)'; 释放 -y sudo dnf 配置管理器 --set-enabled 动力工具
备注
根据您使用的发行版不同,此步骤可能略有不同。请查阅 EPEL 文档: https://docs.fedoraproject.org/en-US/epel/#_quickstart
安装开发工具和 ROS 工具
苏都 dnf 安装 -y \
cmake \
gcc-c++ \
笨蛋 \
生产 \
补丁 \
python3-colcon-common-extensions \
python3-pip \
python3-pydocstyle \
python3-pytest \
python3-pytest-repeat \
python3-pytest-rerunfailures \
python3-rosdep \
python3-setuptools \
python3-vcstool
# 安装一些测试和
# 不提供 RPM
python3 -m 核心 安装 -U --用户 \
鳞片8-盲点-例外==0.1.1 \
flake8-builtins \
flake8-class-newline \
flake8-comprehensions \
flake8-deprecated \
flake8-docstrings \
flake8-import-order \
flake8-quotes \
mypy==0.931
获取 ROS 2 代码
创建工作区并克隆所有软件仓库:
mkdir -p ~/ros2_humble/src
CD ~/ros2_humble vcs 舶来品 --输入 https://raw.githubusercontent.com/ros2/ros2/humble/ros2.repos 来源
使用 rosdep 安装依赖项
ROS 2 软件包基于经常更新的 RHEL 系统。我们建议您在安装新软件包之前确保您的系统是最新的。
苏都 dnf 更新
苏都 rosdep 启动 更新 安装 --从路径 来源 --忽略源代码 -y --跳键 "asio cyclonedds fastcdr fastrtps ignition-cmake2 ignition-math6 python3-babeltrace python3-mypy rticonnext-dds-6.0.1 urdfdom_headers";
安装其他 DDS 实现(可选)
如果您想使用默认设置之外的其他 DDS 或 RTPS 供应商,可以查看说明 这里.
在工作区中构建代码
如果您已经以其他方式(通过 RPM 或二进制发行版)安装了 ROS 2,请确保在没有其他安装的全新环境中运行以下命令。同时确保没有 消息来源 /opt/ros/${ROS_DISTRO}/setup.bash
在你的 .bashrc
.您可以使用命令 printenv | grep -i ROS
.输出应为空。
有关使用 ROS 工作区的更多信息,请参阅 本教程.
CD ~/ros2_humble/ colcon 构建 --symlink-install --cmake-args -DTHIRDPARTY_Asio=关于 -DPython3_EXECUTABLE=/usr/bin/python3 --no-warn-unused-cli
注意:如果在编译所有示例时遇到困难,导致无法成功完成编译,可以使用 COLCON_IGNORE
与 CATKIN_IGNORE 来忽略子树或从工作区中删除文件夹。举个例子:你想避免安装大型 OpenCV 库。那么只需运行 触摸 COLCON_IGNORE
在 cam2image
演示目录,使其不参与构建过程。
环境设置
源设置脚本
通过获取以下文件来设置环境。
# 如果不使用 bash,请将 ".bash" 替换为您的 shell
# 可能的值是:setup.bash、setup.sh、setup.zsh
. ~/ros2_humble/install/local_setup.bash
举例说明
在一个终端中输入设置文件,然后运行 C++ 话匣子
:
. ~/ros2_humble/install/local_setup.bash ros2 运行 演示节点 话匣子
在另一个终端中输入设置文件的源代码,然后运行 Python 听众
:
. ~/ros2_humble/install/local_setup.bash ros2 运行 演示节点 听众
您应该看到 话匣子
说它是 出版
信息和 听众
成语 I 听说
这些信息。这就验证了 C++ 和 Python API 都能正常工作。万岁
安装后的下一步
继续 教程和演示 来配置环境、创建自己的工作区和软件包,并学习 ROS 2 的核心概念。
其他 RMW 实施(可选)
ROS 2 使用的默认中间件是 快速 DDS
但中间件 (RMW) 可以在运行时更换。参见 向导 如何使用多个 RMW。
备用编译器
除了 gcc 之外,使用其他编译器编译 ROS 2 也很简单。如果设置环境变量 CC
和 CXX
分别转换为可运行的 C 和 C++ 编译器的可执行文件,并重新触发 CMake 配置(通过使用 --force-cmake-config
或删除希望受影响的软件包),CMake 将重新配置并使用不同的编译器。
铛
配置 CMake 以检测并使用 Clang:
苏都 dnf 安装 铛
出口 CC=铛
出口 CXX=Clang++ colcon 构建 --cmake-force-configure
了解最新信息
参见 维护源检查 定期刷新源安装。
故障排除
可以找到故障排除技术 这里.
卸载
如果您按照上述说明使用 colcon 安装了工作区,那么 "卸载 "可能只是打开一个新终端,而不是从工作区的
设置
文件。这样,您的系统环境就会像没有安装 Humble 软件一样运行。如果你也想释放空间,可以用以下方法删除整个工作区目录:
rm -rf ~/ros2_humble