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

failed to load openni_kinect libraries

asked 2012-05-16 15:27:20 -0600

this post is marked as community wiki

This post is a wiki. Anyone with karma >75 is welcome to improve it.

I'm using my turtlebot for the first time with electric. Every time I try to roslaunch anything that uses packages from the openni_kinect stack (follower.launch, openni.launch, etc), I get a bunch of errors about failing to load libraries from openni_kinect. Here's an example of one of the errors.

[ERROR] [1337214239.808330340]: Failed to load nodelet [/camera/depth/metric_rect] of type [depth_image_proc/convert_metric]: Failed to load library /opt/ros/electric/stacks/openni_kinect/depth_image_proc/lib/ Make sure that you are calling the PLUGINLIB_REGISTER_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Cannot load library: /opt/ros/electric/stacks/perception_pcl/pcl/lib/ symbol __cxa_pure_virtual, version libmysqlclient_16 not defined in file with link time reference
[FATAL] [1337214239.809701780]: Service call failed!
[camera/depth/metric_rect-8] process has died [pid 16675, exit code 255].
log files: /home/turtlebot/.ros/log/f32ffc28-9fb2-11e1-ac38-485d603306cf/camera-depth-metric_rect-8*.log

There are a bunch of similar errors all with libraries from the same stack. I've tried reinstalling that stack but to no avail. Hopefully this is something really obvious that I'm missing.


edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2012-05-16 16:46:09 -0600

this post is marked as community wiki

This post is a wiki. Anyone with karma >75 is welcome to improve it.

This looks like trouble between the version of libmysql that the debian packages were linked against at compile time and the version of libmysql that's installed on your system.

I can see a couple of possible causes here:

  • The system is out of date; the ROS packages may depend on some arbitrary library features that it probably shouldn't. Updating should fix that.
  • Sourcing multiple versions of ROS in the same shell. I know some of the turtlebot installs source ROS from the system bashrc or /etc/profile, so this could be hiding somewhere non-obvious. This will show up as multiple versions in your $ROS_PACKAGE_PATH
  • You're pulling in debs for the wrong version of ubuntu; take a look at your sources.list[.d], and make sure the version string in your deb line matches the version of ubuntu you're running
edit flag offensive delete link more

Question Tools


Asked: 2012-05-16 15:27:20 -0600

Seen: 325 times

Last updated: May 16 '12