fehlende Symbole in der libSM.so.6

Software besorgen und anwenden
Antworten
Nachricht
Autor
Benutzername

fehlende Symbole in der libSM.so.6

#1 Beitrag von Benutzername » 01. Okt 2008 15:41

Nach einem Onlineupdate habe ich seit ein paar Tagen das Problem, dass sich nichts mehr compilieren lässt. Davon betroffen sind KDE4, SDL, Inkscape-devel und Gimp-devel. Alles bricht mit folgender Fehlermeldung ab:
/usr/lib/libSM.so.6: undefined reference to `uuid_unparse_lower'
/usr/lib/libSM.so.6: undefined reference to `uuid_generate'
Die Datei /usr/lib/libSM.so.6 gehört zum X11 Session-Management, Paket xorg-x11-libSM-7.3-44.5.i586.rpm, das seit 29. Juli nicht verändert wurde. Ich habe mal probeweise das neue Xorg 7.4 installiert, falls das 7.3 zu alt ist. Damit läuft zwar jetzt mein Monitor in voller Auflösung und auch sonst geht alles, der Fehler aber bleibt.
System ist Opensuse 11.0 Kann jemand etwas Licht in die Sache bringen?

Benutzeravatar
Janka
Beiträge: 3585
Registriert: 11. Feb 2006 19:10

#2 Beitrag von Janka » 01. Okt 2008 16:09

Ich würde vermuten, dass du zwar das Library-Paket erneuert hast, nicht aber das zugehörige devel-Paket. Oder umgekehrt.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

Benutzername

#3 Beitrag von Benutzername » 01. Okt 2008 17:04

Daran sollte es nicht liegen. Installiert sind diese Pakete:
xorg-x11-libSM-7.4-1.1
xorg-x11-libSM-devel-7.4-1.1
Ich verwende diese Quelle: download.opensuse.org/repositories/X11:/XOrg/openSUSE_11.0

Benutzeravatar
hjb
Pro-Linux
Beiträge: 3264
Registriert: 15. Aug 1999 16:59
Wohnort: Bruchsal
Kontaktdaten:

#4 Beitrag von hjb » 02. Okt 2008 10:30

Hi!

Es fehlt die Bibliothek libuuid, die vermutlich als Extrapaket bereitsteht. Entweder gehört diese Bibliothek zur Grundausstattung und wurde aus irgendeinem Grund nicht installiert, oder die Abhängigkeit fehlt in xorg-x11-libSM-7.4-1.1 .

Grüße,
hjb
Pro-Linux - warum durch Fenster steigen, wenn es eine Tür gibt?

Benutzername

#5 Beitrag von Benutzername » 02. Okt 2008 11:28

Also ich habe hier diese installiert:
libuuid-devel-1.40.8-20.1
libuuid1-1.40.8-20.1
Strings sagt mir, /lib/libuuid.so.1.2 enthält folgende Symbole die mit uuid anfangen:
uuid__generate_random
uuid__generate_time
uuid_clear
uuid_compare
uuid_copy
uuid_generate
uuid_generate_random
uuid_generate_time
uuid_is_null
uuid_pack
uuid_parse
uuid_time
uuid_type
uuid_unpack
uuid_unparse
uuid_unparse_lower
uuid_unparse_upper
uuid_variant
uuid_generate und uuid_unparse_lower sind dabei, wieso werden sie trotzdem nicht gefunden? Linker-Cache ist auch aktuell, falls das eine Rolle spielt.

Benutzeravatar
hjb
Pro-Linux
Beiträge: 3264
Registriert: 15. Aug 1999 16:59
Wohnort: Bruchsal
Kontaktdaten:

#6 Beitrag von hjb » 03. Okt 2008 10:41

Hi!

Könnte es irgendwo im System eine andere libuuid geben, so dass die falsche geladen wird? Das müsste man eigentlich schon mit ldd sehen können. Ansonsten hilft es vielleicht, das Programm mal mit strace zu observieren.

Grüße,
hjb
Pro-Linux - warum durch Fenster steigen, wenn es eine Tür gibt?

Benutzername

#7 Beitrag von Benutzername » 03. Okt 2008 11:51

Ähm, ja, daran scheint es zu liegen. Auf Verdacht habe ich /var/lib/rpm gesichert und dann ein rpm --rebuilddb gemacht. Nun sieht es so aus:
Es gibt eine /lib/libuuid.so.1 die auf /lib/libuuid.so.1.2 zeigt, beide gehören zum Paket libuuid1. In /usr/lib hingegen gibt es auch eine libuuid.so.1, die auf einmal niemandem gehört und über libuuid.so.16 auf libuuid.so.16.0.20 zeigt, die zum Paket libuuid16 gehört. Vorher gehörten alle diese Dateien zum Paket libuuid1.
Ich verneige mich vor den Programmierern des Linkers, das der noch weiß, was wohin passt. Ich nehme jetzt erstmal meinen Restfeiertag und setzte mich morgen nochmal dran.

Antworten