Skip to content

Commit

Permalink
Update instructions for building Gazebo from source on macOS (#486)
Browse files Browse the repository at this point in the history
Signed-off-by: Addisu Z. Taddese <[email protected]>
Co-authored-by: Steve Peters <[email protected]>
  • Loading branch information
azeey and scpeters authored Aug 15, 2024
1 parent a86d6e6 commit ac943c4
Show file tree
Hide file tree
Showing 4 changed files with 30 additions and 52 deletions.
19 changes: 10 additions & 9 deletions fortress/install_osx_src.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,19 +88,20 @@ brew cask install xquartz
General dependencies:

```bash
brew install assimp boost bullet cmake cppzmq dartsim@6.10.0 doxygen eigen fcl ffmpeg flann freeimage freetype gflags google-benchmark gts ipopt irrlicht jsoncpp libccd libyaml libzzip libzip nlopt ode open-scene-graph ossp-uuid ogre1.9 ogre2.2 pkg-config protobuf qt qwt rapidjson ruby tbb tinyxml tinyxml2 urdfdom zeromq
brew install assimp boost bullet cmake cppzmq dartsim doxygen eigen fcl ffmpeg flann freeimage freetype gflags google-benchmark gts ipopt irrlicht jsoncpp libccd libyaml libzzip libzip nlopt ode open-scene-graph ossp-uuid ogre1.9 ogre2.2 pkg-config protobuf qt qwt rapidjson ruby tbb tinyxml tinyxml2 urdfdom zeromq
```

`[email protected]` and `qt5` are not sym-linked. To use those dependencies when building
`ignition-physics2` and `ignition-gui3`, run the following after installation to add them to `/use/local`:
`qt@5` is a "keg only" Homebrew formula and its path must be explicitly configured before building Gazebo:

```bash
# [email protected]
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}:/usr/local/opt/[email protected]
export DYLD_FALLBACK_LIBRARY_PATH=${DYLD_FALLBACK_LIBRARY_PATH}:/usr/local/opt/[email protected]/lib:/usr/local/opt/octomap/local
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:/usr/local/opt/[email protected]/lib/pkgconfig
# qt5
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}:/usr/local/opt/qt@5
# qt@5
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH:+$CMAKE_PREFIX_PATH:}`brew --prefix qt@5`
```

Unlink `qt` to avoid conflicts with other versions of qt (e.g. qt6)

```
brew unlink qt
```

### Install compiler requirements
Expand Down
24 changes: 6 additions & 18 deletions garden/install_osx_src.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,32 +89,20 @@ brew install xquartz --cask
General dependencies:

```bash
brew install assimp boost bullet cmake cppzmq dartsim@6.10.0 doxygen eigen fcl ffmpeg flann freeimage freetype gdal gflags google-benchmark gts ipopt jsoncpp libccd libyaml libzzip libzip nlopt ode open-scene-graph ossp-uuid ogre1.9 ogre2.3 pkg-config protobuf qt@5 qwt-qt5 rapidjson ruby tbb tinyxml tinyxml2 urdfdom zeromq
brew install assimp boost bullet cmake cppzmq dartsim doxygen eigen fcl ffmpeg flann freeimage freetype gdal gflags google-benchmark gts ipopt jsoncpp libccd libyaml libzzip libzip nlopt ode open-scene-graph ossp-uuid ogre1.9 ogre2.3 pkg-config protobuf qt@5 qwt-qt5 rapidjson ruby tbb tinyxml tinyxml2 urdfdom zeromq
```

`[email protected]` and `qt@5` are not sym-linked. To use those dependencies when building
`gz-physics6` and `gz-gui7`, run the following after installation:

For Macs with Intel processors, add them to `/usr/local`:
`qt@5` is a "keg only" Homebrew formula and its path must be explicitly configured before building Gazebo:

```bash
# [email protected]
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}:/usr/local/opt/[email protected]
export DYLD_FALLBACK_LIBRARY_PATH=${DYLD_FALLBACK_LIBRARY_PATH}:/usr/local/opt/[email protected]/lib:/usr/local/opt/octomap/local
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:/usr/local/opt/[email protected]/lib/pkgconfig
# qt@5
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}:/usr/local/opt/qt@5
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH:+$CMAKE_PREFIX_PATH:}`brew --prefix qt@5`
```

Note if you are on an ARM based Apple Silicon Mac machine, you will need to add them to `/opt/homebrew` instead:
Unlink `qt` to avoid conflicts with other versions of qt (e.g. qt6)

```bash
# [email protected]
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}:/opt/homebrew/opt/[email protected]
export DYLD_FALLBACK_LIBRARY_PATH=${DYLD_FALLBACK_LIBRARY_PATH}:/opt/homoebrew/opt/[email protected]/lib:/opt/homebrew/opt/octomap/local
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:/opt/homebrew/opt/[email protected]/lib/pkgconfig
# qt@5
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}:/opt/homebrew/opt/qt@5
```
brew unlink qt
```

### Install compiler requirements
Expand Down
15 changes: 8 additions & 7 deletions harmonic/install_osx_src.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,21 +79,22 @@ brew install --cask xquartz
General dependencies:

```bash
brew install assimp boost bullet cmake cppzmq dartsim@6.10.0 doxygen eigen fcl ffmpeg flann freeimage freetype gdal gflags google-benchmark gts ipopt jsoncpp libccd libyaml libzzip libzip nlopt ode open-scene-graph ossp-uuid ogre1.9 ogre2.3 pkg-config protobuf qt@5 qwt-qt5 rapidjson ruby tbb tinyxml tinyxml2 urdfdom zeromq
brew install assimp boost bullet cmake cppzmq dartsim doxygen eigen fcl ffmpeg flann freeimage freetype gdal gflags google-benchmark gts ipopt jsoncpp libccd libyaml libzzip libzip nlopt ode open-scene-graph ossp-uuid ogre1.9 ogre2.3 pkg-config protobuf qt@5 qwt-qt5 rapidjson ruby tbb tinyxml tinyxml2 urdfdom zeromq
```

`[email protected]` and `qt@5` are "keg only" Homebrew formulae and their paths must be explicitly configured before building Gazebo:
`qt@5` is a "keg only" Homebrew formula and its path must be explicitly configured before building Gazebo:

```bash
# [email protected]
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH:+$CMAKE_PREFIX_PATH:}`brew --prefix [email protected]`
export DYLD_FALLBACK_LIBRARY_PATH=${DYLD_FALLBACK_LIBRARY_PATH:+$DYLD_FALLBACK_LIBRARY_PATH:}`brew --prefix [email protected]`/lib:`brew --prefix octomap`/local
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH:+$PKG_CONFIG_PATH:}`brew --prefix [email protected]`/lib/pkgconfig

# qt@5
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH:+$CMAKE_PREFIX_PATH:}`brew --prefix qt@5`
```

Unlink `qt` to avoid conflicts with other versions of qt (e.g. qt6)

```
brew unlink qt
```

## Building the Gazebo Libraries

Once the compiler and all the sources are in place it is time to compile them.
Expand Down
24 changes: 6 additions & 18 deletions ionic/install_osx_src.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,32 +87,20 @@ brew cask install xquartz
General dependencies:

```bash
brew install assimp boost bullet cmake cppzmq dartsim@6.10.0 doxygen eigen fcl ffmpeg flann freeimage freetype gdal gflags google-benchmark gts ipopt jsoncpp libccd libyaml libzzip libzip nlopt ode open-scene-graph ossp-uuid ogre1.9 ogre2.3 pkg-config protobuf qt@5 qwt-qt5 rapidjson ruby tbb tinyxml tinyxml2 urdfdom zeromq
brew install assimp boost bullet cmake cppzmq dartsim doxygen eigen fcl ffmpeg flann freeimage freetype gdal gflags google-benchmark gts ipopt jsoncpp libccd libyaml libzzip libzip nlopt ode open-scene-graph ossp-uuid ogre1.9 ogre2.3 pkg-config protobuf qt@5 qwt-qt5 rapidjson ruby tbb tinyxml tinyxml2 urdfdom zeromq
```

`[email protected]` and `qt@5` are not sym-linked. To use those dependencies when building
`gz-physics8` and `gz-gui9`, run the following after installation:

For Macs with Intel processors, add them to `/usr/local`:
`qt@5` is a "keg only" Homebrew formula and its path must be explicitly configured before building Gazebo:

```bash
# [email protected]
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}:/usr/local/opt/[email protected]
export DYLD_FALLBACK_LIBRARY_PATH=${DYLD_FALLBACK_LIBRARY_PATH}:/usr/local/opt/[email protected]/lib:/usr/local/opt/octomap/local
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:/usr/local/opt/[email protected]/lib/pkgconfig
# qt@5
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}:/usr/local/opt/qt@5
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH:+$CMAKE_PREFIX_PATH:}`brew --prefix qt@5`
```

Note if you are on an ARM based Apple Silicon Mac machine, you will need to add them to `/opt/homebrew` instead:
Unlink `qt` to avoid conflicts with other versions of qt (e.g. qt6)

```bash
# [email protected]
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}:/opt/homebrew/opt/[email protected]
export DYLD_FALLBACK_LIBRARY_PATH=${DYLD_FALLBACK_LIBRARY_PATH}:/opt/homoebrew/opt/[email protected]/lib:/opt/homebrew/opt/octomap/local
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:/opt/homebrew/opt/[email protected]/lib/pkgconfig
# qt@5
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}:/opt/homebrew/opt/qt@5
```
brew unlink qt
```

### Install compiler requirements
Expand Down

0 comments on commit ac943c4

Please sign in to comment.