Skip to content

gazebosim/ros_gz

 
 

Repository files navigation

Build Status

ROS 2 version Gazebo version Branch Binaries hosted at
<<<<<<< HEAD
Foxy Citadel foxy https://packages.ros.org
Foxy Edifice foxy only from source 1
Galactic Edifice galactic https://packages.ros.org 1
Galactic Fortress galactic only from source
=======

7f19b09 (Update README: remove EOLs and add Kilted (#766)) Humble | Fortress | humble | https://packages.ros.org Humble | Garden | humble | gazebo packages2 1 Humble | Harmonic | humble | gazebo packages2 Jazzy | Garden | ros2 | only from source 1 Jazzy | Harmonic | jazzy | https://packages.ros.org <<<<<<< HEAD Rolling | Fortress | humble | https://packages.ros.org ======= Kilted | Ionic | kilted | https://packages.ros.org 7f19b09 (Update README: remove EOLs and add Kilted (#766)) Rolling | Garden | ros2 | only from source 1 Rolling | Harmonic | ros2 | only from source

For information on ROS 2 and Gazebo compatibility, refer to the melodic branch README

Details about the renaming process from ign to gz .

Note: The ros_ign prefixed packages are shim packages that redirect to their ros_gz counterpart. Under most circumstances you want to be using the ros_gz counterpart.

Integration between ROS and Gazebo

Packages

This repository holds packages that provide integration between ROS and Gazebo:

Install

This branch supports ROS Humble. See above for other ROS versions.

Binaries

Humble binaries are available for Fortress. They are hosted at https://packages.ros.org.

  1. Add https://packages.ros.org

     sudo sh -c 'echo "deb [arch=$(dpkg --print-architecture)] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" > /etc/apt/sources.list.d/ros2-latest.list'
     curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
     sudo apt-get update
    
  2. Install ros_gz

     sudo apt install ros-humble-ros-gz
    

From source

ROS

Be sure you've installed ROS Humble (at least ROS-Base). More ROS dependencies will be installed below.

Gazebo

Install either Fortress, Harmonic or Ionic.

Set the GZ_VERSION environment variable to the Gazebo version you'd like to compile against. For example:

export GZ_VERSION=edifice # IMPORTANT: Replace with correct version

You only need to set this variable when compiling, not when running.

Compile ros_gz

The following steps are for Linux and macOS.

  1. Create a colcon workspace:

    # Setup the workspace
    mkdir -p ~/ws/src
    cd ~/ws/src
    
    # Download needed software
    git clone https://github.com/gazebosim/ros_gz.git -b humble
    
  2. Install dependencies (this may also install Gazebo):

    cd ~/ws
    rosdep install -r --from-paths src -i -y --rosdistro humble
    

    If rosdep fails to install Gazebo libraries and you have not installed them before, please follow Gazebo installation instructions.

  3. Build the workspace:

    # Source ROS distro's setup.bash
    source /opt/ros/<distro>/setup.bash
    
    # Build and install into workspace
    cd ~/ws
    colcon build
    

Tip

The ros_gz library makes heavy use of templates which causes compilers to consume a lot of memory. If your build fails with c++: fatal error: Killed signal terminated program cc1plus try building with colcon build --parallel-workers=1 --executor sequential. You might also have to set export MAKEFLAGS="-j 1" before running colcon build to limit the number of processors used to build a single package.

If `colcon build` fails with [this issue](https://github.com/gazebosim/ros_gz/issues/401)

```
CMake Error at CMakeLists.txt:81 (find_package):
  By not providing "Findactuator_msgs.cmake" in CMAKE_MODULE_PATH this
  project has asked CMake to find a package configuration file provided by
  "actuator_msgs", but CMake did not find one.
```

```bash
cd src
git clone git@github.com:rudislabs/actuator_msgs.git
cd ../
colcon build
```

ROSCon 2022

Project Template

A template project integrating ROS and Gazebo simulator

Footnotes

  1. Note that the Gazebo version on this row has reached end-of-life. 2 3 4 5

  2. Binaries for these pairings are provided from the packages.osrfoundation.org repository. Refer to https://gazebosim.org/docs/latest/ros_installation for installation instructions. 2