Gazebo brings a fresh approach to simulation with a complete toolbox of development libraries and cloud services to make simulation easy. Iterate fast on your new physical designs in realistic environments with high fidelity sensors streams. Test control strategies in safety, and take advantage of simulation in continuous integration tests.
Gazebo is an open-source 2D/3D robotics simulator that began development in 2002. In 2017, development forked into two versions, known as âGazeboâ, the original monolithic architecture, and âIgnitionâ, which had moved to becoming a modernized collection of loosely coupled libraries. Following a trademark obstacle in 2022 regarding their use of the name âIgnitionâ, Open Robotics took the opportunity to switch the version names, dubbing the original fork âGazebo Classicâ and the new, modern fork âGazeboâ.
Gazebo Classic (Gazebo11)
Check if you have Gazebo
gazebo --version
Gazebo multi-robot simulator, version 11.10.2
Copyright (C) 2012 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org
Release mode: This will generate optimized code but will not have debug symbols. Use this mode if you donât need to use GDB.
cmake ../
Debug Mode: This will generate code with debug symbols. Gazebo will run slower, but youâll be able to use GDB.
cmake -DCMAKE_BUILD_TYPE=Debug ../cmake ../
The output from cmake ../ may generate a number of errors and warnings about missing packages. You must install the missing packages that have errors and re-run cmake ../. Make sure all the build errors are resolved before continuing (they should be there from the earlier step in which you installed prerequisites). Warnings alert of optional packages that are missing.
For using PPAs for unsupported architectures like arm64 (note the warning below), see Gazebo on Raspberry Pi
Non-AMD64
On Ubuntu Jammy (22.04) Gazebo binaries are only available for amd64. ROS uses Ubuntu official packages for Gazebo so there are only amd64 ROS packages. Packages for arm64. armhf and ppc64 were released for the same version in Jammy in a PPA https://launchpad.net/~openrobotics/+archive/ubuntu/gazebo11-non-amd64 but there is no official support nor updates for these binaries.
âCurrently, there is an apt package published for gazebo on amd64 for Ubuntu 22.04, but not for arm64. Is there a technical reason for this, or is it just a task to cross-compile and release it?â
ROS is not going to import arm versions of Gazebo11 for the following reasons:
Gazebo11 is going to be replaced by then new Gazebo, migration is recommended as soon as possible and the efforts will be focused in the new version.
The version in the PPA is not exactly the same than in Ubuntu since it needed some custom patches since some of its dependencies were not available on Ubuntu Jammy.
The packages in the PPA can be used without any guarantee, they probably will work as expected but there is no official support for them. If you are using ROS for gazebo_ros_pkgs, there wonât be packages for arm64 or amrhf but you can use the PPA to build them from source using a colcon/catkin workspace easily.
Gazebo multi-robot simulator, version 11.14.0
Copyright (C) 2012 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org
gazebo_ros_pkgs is a set of ROS packages that provide the necessary interfaces to simulate a robot in the Gazebo 3D rigid body simulator for robots. It integrates with ROS using ROS messages, services and dynamic reconfigure.
Install from debian packages (on Ubuntu) [1/6/25 WSL]