ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

gzserver: Symbol look up error in 'libgazebo_ros_control' results in exit code 127

asked 2014-07-02 13:37:39 -0600

lockandfire gravatar image


I am using ros_control, gazebo and URDF to set up a simulation for a mobile robot. The urdf can be correctly shown in gazebo.

My system config is:

Ubuntu 13.04-i386 with ros-hydro
gazebo version: 1.9.5
ros-hydro-rosconsole version: 1.10.10
ros-hydro-ros-control / ros-hydro-ros-controllers version: 0.7.2
ros-hydro-gazebo-ros-control version: 2.3.5

Everything goes on well until I added libgazebo_ros_control plugin to it by:

  <plugin name="gazebo_ros_control" filename="">

and launch gazebo again. In this case, symbol look up error / exit code 127 happens:

[ INFO] [1404324642.777868664, 0.011000000]: gazebo_ros_control plugin is waiting for model URDF in parameter [/robot_description] on the ROS param server.
gzserver: symbol lookup error: /opt/ros/hydro/lib/ undefined symbol: _ZN3ros7package10getPluginsERKSsS2_RSt6vectorISsSaISsEEb
[gazebo-1] process has died [pid 3164, exit code 127, cmd /opt/ros/hydro/lib/gazebo_ros/gzserver /home/altrouge/catkin_ws/src/gazebo_ros_demos/rrbot_gazebo/worlds/ __name:=gazebo __log:=/home/altrouge/.ros/log/250502be-0214-11e4-a398-000c29cc235d/gazebo-1.log].
log file: /home/altrouge/.ros/log/250502be-0214-11e4-a398-000c29cc235d/gazebo-1*.log

By GCC demangler, I can get:

undefined symbol: ros::package::getPlugins(std::string const&, std::string const&, std::vector<std::string, std::allocator<std::string> >&, bool)

For checking I git clone the RRbot demo from gazebo_ros tutorial ( ), the same problem occurs.

If I remove the plugin in URDF file, everything returns right. With some googles I could find somebody suggests update rosconsole , but it doesn't work.

Would anybody know what's wrong? Thank you!

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2014-07-20 02:06:53 -0600

lockandfire gravatar image

Recently I found that .so file highly depends on PCs and OSs. Therefore I git clone the gazebo_ros_pkg and use catkin_make_isolated to build them in Ubuntu. Then move the in devel_build/ to /opt/ros/hydro/lib/ to overwrite the one from apt-get. Then it goes well.

edit flag offensive delete link more



It is worrying to me that this would be necessary. It would be interesting to see if this can be reproduced on a clean system with a new installtion of ROS from scratch with apt. If yes, then something with the deb-build process is broken and should be fixed.

demmeln gravatar image demmeln  ( 2014-07-21 15:21:54 -0600 )edit

Today I find it is not necessary. I rebuild .so files in another virtual PC which still suffer from this problem, it did not work. The error in .so files can occur in any plugin, not only gazebo. That virtual pc was set up 2 months ago. However, reinstall ubuntu works.

lockandfire gravatar image lockandfire  ( 2014-07-22 02:46:24 -0600 )edit

Ok, you could have probably fixed it somehow with reinstalling ROS and making sure your APT sources and cache are up to date, but it seems for a virtual machine reinstalling the OS is likely quicker than finding the root cause. Thanks for reporting back.

demmeln gravatar image demmeln  ( 2014-07-22 06:40:56 -0600 )edit

can anyone please helo me ?? I am having similar error with, I have cloned and catkin_make the package in ubuntu itself, I am still having this error. I am using Ros kinetic and gazebo 7.15 with ubuntu 16.04 OS. can anyone please help me point in the right direction to fix this error. I have been stuck here since long time.

microbot gravatar image microbot  ( 2019-07-06 12:07:21 -0600 )edit

Question Tools

1 follower


Asked: 2014-07-02 13:37:39 -0600

Seen: 2,232 times

Last updated: Jul 20 '14