Robotics StackExchange | Archived questions

Gazebo crushes while using px4 gimbal_controller_plugin

Hi,

I've been playing with gazebo_gimbal_controller_plugin from px4 firmware but I've encountered strange Gazebo crash. It's thrown while using this plugin, because when I comment the plugin from my .sdf robot model, everything works fine.

I've tried reinstalling Gazebo, Ogre libraries, libpng12-dev library all either from prebuilded packages or from source. But the error stays the same... I really have no idea what's going on and how to fix this...

My system:
   Ubuntu version 14.04 LTS
   Gazebo 7.4
   Latest version of px4 firmware
   Ogre libraries versions 1.8 and 1.9 (both are required for Gazebo I guess)

Here is the error message using gdb:

terminate called after throwing an instance of 'Ogre::ItemIdentityException'
  what():  OGRE EXCEPTION(5:ItemIdentityException): Can not find codec for 'png' image format.
There are no formats supported (no codecs registered). in Codec::getCodec at /build/buildd/ogre-1.9-1.9.0+dfsg1/OgreMain/src/OgreCodec.cpp (line 69)

Program received signal SIGABRT, Aborted.
0x00007ffff68b2c37 in __GI_raise (sig=sig@entry=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
56  ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.

And using backtrack:

#0  0x00007ffff68b2c37 in __GI_raise (sig=sig@entry=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1  0x00007ffff68b6028 in __GI_abort () at abort.c:89
#2  0x00007ffff71bd535 in __gnu_cxx::__verbose_terminate_handler() ()
   from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3  0x00007ffff71bb6d6 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4  0x00007ffff71bb703 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5  0x00007ffff71bb922 in __cxa_throw () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#6  0x00007ffff042eea0 in Ogre::Codec::getCodec(std::string const&) ()
   from /usr/lib/x86_64-linux-gnu/libOgreMain.so.1.9.0
#7  0x00007ffff0227a90 in Ogre::Image::load(Ogre::SharedPtr<Ogre::DataStream>&, std::string const&) () from /usr/lib/x86_64-linux-gnu/libOgreMain.so.1.9.0
#8  0x00007ffff0392b72 in Ogre::SceneManager::initShadowVolumeMaterials() ()
   from /usr/lib/x86_64-linux-gnu/libOgreMain.so.1.9.0
#9  0x00007ffff038ac4f in Ogre::SceneManager::_renderScene(Ogre::Camera*, Ogre::Viewport*, bool) () from /usr/lib/x86_64-linux-gnu/libOgreMain.so.1.9.0
#10 0x00007ffff0409e6b in Ogre::Camera::_renderScene(Ogre::Viewport*, bool) ()
   from /usr/lib/x86_64-linux-gnu/libOgreMain.so.1.9.0
#11 0x00007ffff035a6ee in Ogre::RenderTarget::_updateViewport(Ogre::Viewport*, bool) ()
   from /usr/lib/x86_64-linux-gnu/libOgreMain.so.1.9.0
---Type <return> to continue, or q <return> to quit---
#12 0x00007ffff035a6ab in Ogre::RenderTarget::_updateAutoUpdatedViewports(bool) ()
   from /usr/lib/x86_64-linux-gnu/libOgreMain.so.1.9.0
#13 0x00007ffff035a25e in Ogre::RenderTarget::updateImpl() ()
   from /usr/lib/x86_64-linux-gnu/libOgreMain.so.1.9.0
#14 0x00007ffff035a854 in Ogre::RenderTarget::update(bool) ()
   from /usr/lib/x86_64-linux-gnu/libOgreMain.so.1.9.0

#15 0x00007ffff0843d7c in gazebo::rendering::Camera::Render (this=0x1332530, 
    _force=_force@entry=false) at /tmp/gazebo/gazebo/rendering/Camera.cc:425
#16 0x00007ffff65e34d7 in gazebo::sensors::CameraSensor::Render (this=0x1a4e700)
    at /tmp/gazebo/gazebo/sensors/CameraSensor.cc:190
#17 0x00007ffff6617c05 in operator() (this=<optimized out>)
    at /usr/include/boost/function/function_template.hpp:767
#18 gazebo::event::EventT<void ()>::Signal() (
    this=0x7ffff7947a00 <gazebo::event::Events::render>)
    at /tmp/gazebo/gazebo/common/Event.hh:370
#19 0x00007ffff661c3a3 in operator() (this=<optimized out>)
    at /tmp/gazebo/gazebo/common/Event.hh:214
#20 gazebo::sensors::SensorManager::ImageSensorContainer::Update (this=0xfa2740, 
    _force=<optimized out>) at /tmp/gazebo/gazebo/sensors/SensorManager.cc:697
#21 0x00007ffff661cb9f in gazebo::sensors::SensorManager::Update (
---Type <return> to continue, or q <return> to quit---
    this=0x7ffff687a6c0 <SingletonT<gazebo::sensors::SensorManager>::GetInstance()::t>, 
    _force=<optimized out>) at /tmp/gazebo/gazebo/sensors/SensorManager.cc:171
#22 0x00007ffff7bb1fb7 in gazebo::Server::Run (this=this@entry=0x696770)
    at /tmp/gazebo/gazebo/Server.cc:573
#23 0x00000000004020c9 in main (argc=11, argv=0x7fffffffd158)
    at /tmp/gazebo/gazebo/server_main.cc:40

Thank you for any advice.

Asked by l4ncelot on 2016-11-28 10:33:05 UTC

Comments

Answers