0

Since I installed ubuntu on my laptop, I have a problem with gstreamer, which affects many programs using it, totem, kdenlive, even gnome-control-center, and prevents them from working.

The error message returned is :

totem: symbol lookup error: /lib/x86_64-linux-gnu/libgstaudio-1.0.so.0: 
undefined symbol: gst_aggregator_simple_get_next_time

or

kdenlive: symbol lookup error: /lib/x86_64-linux-gnu/libgstvideo-1.0.so.0: 
undefined symbol: gst_aggregator_simple_get_next_time

I had a look at gstreamer website to see what kind of error it is. So far I understand .so files are libraries gathering functions which can be called by various programs. GstBase.Aggregator seems to be a class and simple_get_next_time a method which returns some integer. My last computer lessons are quite far in time, but it seems to me that this kind of issue is "structural", I mean a function does not recognize some class methods. I tried to reinstall all gstreamer programs, plugins and stuff and the problem is still there. So I made the hypothesis that this class was badly coded. It does not hold because I looked at the www : I seem to be the only one to encounter this particular issue.

The question is: I'm using very generic programs with fresh installs which are working without any errors for everybody so how can I encounter a "structural error" of this kind?

I'm running Ubuntu 20.04.

apt-cache policy libgstreamer-plugins-base1.0-0 returns :

libgstreamer-plugins-base1.0-0:
Installé : 1.16.2-4
Candidat : 1.16.2-4
Table de version :
1.16.2-4 500
500 http://fr.archive.ubuntu.com/ubuntu focal/main amd64 Packages
100 /var/lib/dpkg/status

ldd /lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 | grep local returns

libgstbase-1.0.so.0 => /usr/local/lib/libgstbase-1.0.so.0 >(0x00007ff3272d5000)
libgstreamer-1.0.so.0 => /usr/local/lib/libgstreamer-1.0.so.0 >(0x00007ff326fbb000)

and

ldd /lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 | grep local returns

libgstbase-1.0.so.0 => /usr/local/lib/libgstbase-1.0.so.0 (0x00007f4cc0a04000)
libgstreamer-1.0.so.0 => /usr/local/lib/libgstreamer-1.0.so.0 (0x00007f4cc06ea000)

I'm very disappointed, please help me! Have a nice day.

Tejas Lotlikar
  • 2,945
  • 5
  • 17
  • 26
cory
  • 3
  • What is your Ubuntu version? Is it upgrade or clean install? Also please add output of the following commands - apt-cache policy libgstreamer-plugins-base1.0-0, ldd /lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 | grep local, ldd /lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 | grep local - to the question by editing it. – N0rbert Dec 27 '20 at 09:06

2 Answers2

0

Since the ldd output found libraries in /usr/local/lib, this may be some leftovers of self-compiled gstreamer libs. They may or may not be binary compatible to the system gstreamer libs, and that might be the problem.

So, for the time being, try to move away /usr/local/lib (or /usr/local entirely) and try again:

sudo mv /usr/local/lib /usr/local/lib.old

Now rebuild the linker cache for good measure:

sudo ldconfig

and now try again to run those applications.


Also, that path /lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 looks fishy to me; that should be /usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0. Please check if maybe that's a broken symbolic link:

cd /lib/x86_64-linux-gnu
file * | grep broken

If there is no broken symlink, the output will be empty; otherwise each line listed is a broken symlink.

HTH

HuHa
  • 3,385
0

Thanks for your help. I have moved /usr/local/lib as you told me to. The apps are now working! Where the two problematic librairies having some dependencies to useless librairies in /usr/local/lib ?

You are also right in your next point about broken symbolic links, I have run the command :

cd /lib/x86_64-linux-gnu file * | grep broken

which returns :

libroken.so.18: symbolic link to libroken.so.18.1.0 libroken.so.18.1.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=9eeddc1b0472826f53e5b3f7bd1b72d1fe971659, stripped

Is this a critical issue, how can I fix this ?

cory
  • 3
  • Ah, no, that's a false positive: The "broken" here is in that lib's name, not in the output of the file command; it doesn't say "broken symbolic link". That lib is part of the "libroken18-heimdahl" package (which I learned just now after googling it). – HuHa Dec 28 '20 at 02:46