macOS 源码安装
本教程适用于 macOS Ventura、Sonoma 和 Sequoia。
建议使用一些额外工具来辅助源码编译,当然也可以通过其他方式获取和构建源码。
获取所有库源码最简单的方法是使用 vcstool。
要以正确的顺序编译各个库和 gz-sim,推荐使用 colcon。
Jetty 的构建工具和依赖可通过 Homebrew 包管理器 安装。安装 Homebrew 后,添加 osrf/simulation tap 即可安装预构建的依赖。
brew tap osrf/simulationbrew trust osrf/simulationbrew update安装编译器要求
Section titled “安装编译器要求”在 macOS Ventura 上构建 Gazebo 库至少需要 Xcode 14。使用 Xcode Command Line Tools 即可,安装方式如下:
xcode-select --install通过 Homebrew 安装 Python 3
Section titled “通过 Homebrew 安装 Python 3”Jetty 兼容 Python 3。从 Homebrew 安装最新版本:
brew install python3从 PyPI 安装 vcstool 和 colcon
Section titled “从 PyPI 安装 vcstool 和 colcon”python3 -m venv $HOME/vcs_colcon_installation. $HOME/vcs_colcon_installation/bin/activatepip3 install vcstool colcon-common-extensions首先创建一个开发者工作区,供 vcstool 和 colcon 使用:
mkdir -p ~/workspace/srccd ~/workspace/srcgazebo-jetty 的所有源码信息都写在一个 yaml 文件中。将其下载到工作区:
curl -OL https://raw.githubusercontent.com/gazebo-tooling/gazebodistro/master/collection-jetty.yaml使用 vcstool 从各仓库自动拉取所有 Gazebo 库的源码:
vcs import < collection-jetty.yaml此时 src 子目录中应该已包含所有可构建的源码。
Ogre 的依赖:
brew install --cask xquartz通用依赖:
brew install assimp boost bullet cli11 cmake cppzmq dartsim doxygen eigen fcl ffmpeg flann freeimage freetype gdal gflags google-benchmark ipopt jsoncpp libccd libyaml libzzip libzip nlopt ode open-scene-graph ossp-uuid ogre1.9 ogre2.3 pkg-config protobuf qt@6 qwt rapidjson ruby tbb tinyxml2 urdfdom zeromq构建 Gazebo 库
Section titled “构建 Gazebo 库”编译器和所有源码就位后,即可开始编译。首先进入工作区,查看 colcon 识别到的包:
cd ~/workspace/colcon graphcolcon graph 应以 依赖关系图 的形式列出 Gazebo 库。确认无误后,即可构建整套库:
colcon build --merge-install注意,如果你使用的是基于 ARM 架构的 Apple Silicon Mac,可能需要额外设置几个 cmake 参数:
colcon build --cmake-args -DCMAKE_MACOSX_RPATH=FALSE -DCMAKE_INSTALL_NAME_DIR=$(pwd)/install/lib --merge-install为加快构建速度,也可以禁用测试:
colcon build --cmake-args -DBUILD_TESTING=OFF --merge-install若需使用调试器,请启用调试符号。Gazebo 运行会变慢,但可使用 lldb:
colcon build --cmake-args ' -DBUILD_TESTING=OFF' ' -DCMAKE_BUILD_TYPE=Debug' --merge-install要构建某个包及其所有依赖包:
colcon build --merge-install --packages-up-to PACKAGE_NAME要构建单个包:
colcon build --merge-install --packages-select PACKAGE_NAME更多 colcon 构建和测试选项,请参阅 colcon 文档。
如果没有错误,所有二进制文件就都可以使用了。
每次打开新终端时都需要 source 工作区。
在 zsh(macOS 默认 shell)中运行以下命令来 source 工作区:
. ~/workspace/install/setup.zsh或者如果使用的是 bash:
. ~/workspace/install/setup.bash现在应该可以启动 Gazebo 了:
# launch server in one terminalgz sim -v 4 shapes.sdf -s
# launch gui in a separate terminal# remember to source the workspace setup scriptgz sim -v 4 -g源码安装说明到此结束;返回 入门 页面,开始使用 Gazebo!
参见 故障排除