警告
您正在阅读的 ROS 2 文档版本已达到 EOL(生命周期结束),不再受官方支持。如果您想了解最新信息,请访问 Jazzy.
在 macOS 上构建 ROS 2
系统要求
我们支持 macOS 10.12.x。
不过,已知一些新版本(如 10.13.x)和一些旧版本(如 10.11.x 和 10.10.x)也可以使用。
安装先决条件
要构建 ROS 2,您需要安装以下设备:
Xcode
如果尚未安装,请安装 Xcode 和命令行工具:
xcode-select --安装
酿 (需要安装更多东西;您可能已经有了这个)。:
请按照以下网址的安装说明进行操作 http://brew.sh/
可选:检查
酿
运行酿 医生
修复它发现的任何问题。
您还需要安装 Java 运行时,可以通过以下方式获取 这里.
使用
酿
安装更多东西:酿 安装 cmake cppcheck 本征 pcre poco python3 tinyxml wget # 如果使用 Fast-RTPS,则为其安装依赖项 酿 安装 秋叶 tinyxml2 brew 安装 opencv # 为 rcl_logging_log4cxx 安装依赖项 酿 安装 log4cxx
安装 rviz 依赖项
# 为 Rviz 安装依赖项 酿 安装 qt 自由类型 屁股 # 在 PATH 和 CMAKE_PREFIX_PATH 中添加 Qt 目录 出口 cmake_prefix_path=$cmake_prefix_path:/usr/local/opt/qt 出口 路径=$PATH:/usr/local/opt/qt/bin
使用
python3 -m 核心
(只是核心
可能安装 Python3 或 Python2)来安装更多的东西:python3 -m 核心 安装 argcomplete catkin_pkg Colcon-common-extensions 覆盖率 空虚 flake8 鳞片8-盲点-例外 flake8-builtins flake8-class-newline flake8-comprehensions flake8-deprecated flake8-docstrings flake8-import-order flake8-quotes 云雀解析器 调侃 鼻子 pep8 pydocstyle 解析 设置工具 vcstool
可选如果您想构建 ROS 1<->2 桥接器,则必须同时安装 ROS 1:
从正常的安装说明开始: https://wiki.ros.org/kinetic/Installation/OSX/Homebrew/Source
当您在调用
生成器
来获取源代码,下面是另一种调用方式,只需调入产生有用桥接所需的最低限度的代码:生成器 柔荑花序 共同 msgs roscpp rosmsg --rosdistro 动力学 --侦探 --纯水 -焦油 >; kinetic-ros2-bridge-deps.rosinstall wstool 启动 -j8 来源 kinetic-ros2-bridge-deps.rosinstall
否则,只需按照正常说明操作,然后将生成的
install_isolated/setup.bash
然后再继续构建 ROS 2。
禁用系统完整性保护 (SIP)
macOS/OS X 版本 >=10.11 默认启用了系统完整性保护。这样,SIP 就不会阻止进程继承动态链接器环境变量,例如 dyld_library_path
您需要禁用它 根据这些说明.
获取 ROS 2 代码
创建工作区并克隆所有软件仓库:
mkdir -p ~/ros2_crystal/src
CD ~/ros2_crystal wget https://raw.githubusercontent.com/ros2/ros2/crystal/ros2.repos vcs 舶来品 来源 <; ros2.repos
安装其他 DDS 供应商(可选)
除了默认的 eProsima 快速 RTPS 之外,如果您还想使用其他 DDS 或 RTPS 供应商,可以查看相关说明 这里.
构建 ROS 2 代码
备注如果您试图构建 ROS 1 <-> ROS 2 桥接,请遵循以下步骤 修改后的指示.
运行 胶管
工具来构建一切(关于使用 胶管
于 本教程):
CD ~/ros2_crystal/ colcon 构建 --symlink-install
环境设置
源 ROS 2 设置文件:
. ~/ros2_crystal/install/setup.bash
这将自动为支持的任何 DDS 供应商设置环境。
举例说明
在一个终端中,如上所述设置 ROS 2 环境,然后运行 C++ 话匣子
:
. ~/ros2_crystal/install/setup.bash ros2 运行 演示节点 话匣子
在另一个终端中输入设置文件的源代码,然后运行 Python 听众
:
. ~/ros2_crystal/install/setup.bash ros2 运行 演示节点 听众
您应该看到 话匣子
说它是 出版
信息和 听众
成语 I 听说
这些信息。这就验证了 C++ 和 Python API 都能正常工作。万岁
参见 教程和演示 其他尝试。
了解最新信息
参见 维护 ROS 2 的源检查 定期刷新源安装。
故障排除
可以找到故障排除技术 这里.
卸载
如果您按照上述说明使用 colcon 安装了工作区,那么 "卸载 "可能只是打开一个新终端,而不是从工作区的
设置
文件。这样,您的环境就会像系统中没有安装 Crystal 软件一样运行。如果你也想释放空间,可以用以下方法删除整个工作区目录:
rm -rf ~/ros2_crystal