Gazebo crash on ROS Noetic: gzserver exit code 139 when launching empty.world

Hi, I’m using ROS Noetic on Ubuntu 20.04. When I try to launch Gazebo with an empty world using gazebo_ros launch file, it crashes with the following error:

[gazebo-2] process has died [pid 19145, exit code 139, cmd /opt/ros/noetic/lib/gazebo_ros/gzserver -e ode worlds/empty.world __name:=gazebo __log:=/home/mahesh/.ros/log/0ea3474c-3b42-11f0-943d-53514126b354/gazebo-2.log].

What I tried:

  • I verified my launch file includes Gazebo correctly.
  • I have installed ros-noetic-gazebo-ros-pkgs and ros-noetic-gazebo-ros-control.
  • Tried reinstalling Gazebo and ROS control plugins.

System Info:

  • OS: Ubuntu 20.04
  • ROS: Noetic
  • Gazebo version: (output of gazebo --version)
  • GPU: (e.g., Intel/NVIDIA + driver version)

Questions:

  • What could cause gzserver to crash with code 139?
  • How can I debug this further or fix it?

Any help is appreciated. Thank you!