Open onurbagoren opened 2 years ago
I am having the same issue, did you find a fix?
@jake3991 sorry for the super late reply. I unfortunately was unable to resolve this issue and haven't been actively using UUV sim as of recently. If you come across a solution for it - please let me know!
Commit hash: 66474bd3648f9fa2d0cf1d42e153ee08f3d3da7e
Expected behaviour I am working with the Heron ASV and am attempting to integrate UUV sensors onto the robot.
I am attempting to add a camera to the Heron as an additional sensor. I added the following snippet of code to the robot description
.xacro
file:I was expecting to see topics published to the camera/image_raw channel, but instead received errors regarding undefined symbols in the
gazebo::DepthCameraPlugin.hh
shared library.Actual behaviour I ran into issues with undefined symbol from the
gazebo::DepthCameraPlugin.hh
shared library. The error is as follows:[Err] [Plugin.hh:212] Failed to load plugin libuuv_gazebo_ros_camera_plugin.so: /home/$USER/Simulators/uuv_simulator/devel/lib/libuuv_gazebo_ros_camera_plugin.so: undefined symbol: _ZTIN6gazebo17DepthCameraPluginE
There were earlier errors relating to this from two undefined functions from that shared library:void OnNewReflectanceFrame
andvoid OnNewNormalsFrame
. I wrote empty functions for them so I wouldn't get the undefined symbol error. But this error, upon digging into it further with ldd, seems to point to the constructor of the constructor of the librarypublic: DepthCameraPlugin();
. This happened in both the Noetic and Melodic distros that I am testing with.In addition, I am seeing this when I try to use the
libimage_sonar_ros_plugin.so
plugin as well.To Reproduce Provide the steps to reproduce:
heron/heron_description/urdf/sensors.xacro
.In the
uuv_simulator
sensor plugins, add the following functions toUnderwaterCameraROSPlugin.hh
:uuv_simulator
sensor plugins, add the following functions toUnderwaterCameraROSPlugin.cc
:}
///////////////////////////////////////////////// void UnderwaterCameraROSPlugin::OnNewNormalsFrame(const float *_normals, unsigned int _width, unsigned int _height, unsigned int _depth, const std::string &_format) {
}