Rosanswers logo

I want to be able to test my robot code with Gazebo on both ROS Indigo and Jade on the same machine. Indigo and Jade use versions of Gazebo that cannot be installed simultaneously, so I'm trying to do my Jade testing in a Docker container. I've installed the Jade image like this:

docker pull osrf/ros:jade-desktop-full

I then run a Bash shell in a Docker container:

docker run -it osrf/ros:jade-desktop-full bash

In the shell, I launch Gazebo:

roslaunch gazebo_ros empty_world.launch

I get this error:

/opt/ros/jade/lib/gazebo_ros/gzserver: 22: .: /opt/ros/jade/lib/gazebo_ros/gzclient: 17: .: Can't open /share/gazebo//setup.sh

This problem seems to be caused by the lack of a gazebo,pc file in the container's /usr/lib/pkgconfig directory. Is there some step that I missed, regarding running Gazebo in a Docker container? I'm aware that I'll have to do more set-up in order to allow Gazebo to access the X server, but right now I just want to solve the gazebo.pc problem.

Originally posted by Jim Rothrock on ROS Answers with karma: 792 on 2015-09-20

Post score: 1


1 Answer 1


Rosanswers logo

I can reproduce the problem. You're right about the missing pc file.

The problem is that the package does not declare a runtime dependency on libgazebo5-dev which is the package that provides the .pc file.

The quick workaround is to apt-get update && apt-get install -y libgazebo5-dev

Please ticket this for gazebo_ros since using the pc file makes libgazebo5-dev a missing runtime dependency.

Originally posted by tfoote with karma: 58457 on 2015-09-28

This answer was ACCEPTED on the original site

Post score: 0


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.