5

I am trying to run Gazebo 11 on my Ubuntu 20.04 system.

After the installations, when I run gazebo with terminal, I encounter with this error below:

gazebo: symbol lookup error: /lib/x86_64-linux-gnu/libavfilter.so.7: undefined symbol: av_write_image_line2, version LIBAVUTIL_56

Could anyone have a solution about that?

fu3ry
  • 151
  • 7

1 Answers1

7

I found it, the underlying problem is too interesting :D

I have Lucid's ArenaSDK (Linux x64) for camera visualization and it uses ffmpeg libraries https://thinklucid.com/downloads-hub. BUT, it individually compiles ffmpeg and creates symbolic links for itself. Additionally, it changes the path for the original ffmpeg's links in config file, which creates a conflict with the real one at /usr/lib/x86_64-linux-gnu.

I recompiled ArenaSDK by giving the system's default ffmpeg's path:

echo "Adding the following Arena SDK library paths to /etc/ld.so.conf.d/$CONF_FILE:"
echo
echo "$CURRENTDIR/lib64"
echo "$CURRENTDIR/GenICam/library/lib/Linux64_x64"
echo "/usr/lib/x86_64-linux-gnu" # EDITED HERE!

sh -c "echo $CURRENTDIR/lib64 > /etc/ld.so.conf.d/$CONF_FILE"
sh -c "echo $CURRENTDIR/GenICam/library/lib/Linux64_x64 >> /etc/ld.so.conf.d/$CONF_FILE"
sh -c "echo /usr/lib/x86_64-linux-gnu >> /etc/ld.so.conf.d/$CONF_FILE" # EDITED HERE!

Now, you are free to install Gazebo without ffmpeg conflicts :)

fu3ry
  • 151
  • 7
  • You saved me a lot of time figuring this out! There is not a lot to find about this specific issue and apparently it also applies to GStreamer which stopped functioning because of this. – GroovyPanda Jun 28 '23 at 07:48