Mailinglist Archive: opensuse-de (1612 mails)

< Previous Next >
Re: Problem mit koffice-wordprocessing-1.5.2-4.1 und libgsf-1.so.1
  • From: Werner Flamme <werner.flamme@xxxxxx>
  • Date: Tue, 25 Jul 2006 16:42:53 +0200
  • Message-id: <44C62DED.6010906@ufz.de>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Philipp Thomas schrieb am 25.07.2006 15:33:
On Tue, 25 Jul 2006 10:04:03 +0200, Werner Flamme wrote:

Hallo Philipp,


rz36:~ # rpm -q --whatprovides libgsf-1.so.1
libgsf-32bit-1.12.1-3
libgsf-1.13.99-15

Sehr witzig :-(

Nein, sondern vollkommen in Ordnung. libgsf-32bit beinhaltet die 32
bittige Version der libgsf, die natürlich den gleichen Namen hat und
sich nur im Pfad unterscheidet.
Das ist mir bekannt. Mein Kommentar bezog sich darauf, dass rpm die
Auskunft gibt, diese Datei werde vom Paket libgsf-1.13.99-15
bereitgestellt. Das Paket ist installiert (sonst würde rpm es nicht
kennen). Aber die Bibliothek libgsf-1.so.1 ist rpm nicht bekannt, wenn ich
ein Programm per rpm installieren will, das diese Bibliothek benötigt (eben
koffice-wordprocessing-1.5.2-4.1).


Die Datei /opt/gnome/lib/libgsf-1.so.1 ist ein Symlink auf
/opt/gnome/lib/libgsf-1.so.1.12.1;

Das ist die 32-bittige Bibliothek.
Auch jenes habe ich verstanden. 64bit-Bibliotheken stehen oft in
lib64-Verzeichnissen ;-)


der nicht akzeptierte Symlink
/opt/gnome/lib64/libgsf-1.so.1 zeigt genau so auf
/opt/gnome/lib64/libgsf-1.so.113.0.99 wie der Symlink
/opt/gnome/lib64/libgsf-1.so.113 auch. Letzere wird gefunden...

Ein wenig Grundlagen:

Die von einem Programm bzw. einer dynamischen Bibliothek benötigten
Biobliotheken werden im Kopf des Binaries in sog. DT_NEEDED Einträgen
festgehalt. Diese kannst du dir mit "objdump -p" anzeigen lassen. Das
sieht dann in etwa so aus:

Dynamic Section:
NEEDED libresmgr.so.0.9.8
NEEDED libc.so.6

*Nach diesen Namen* sucht der dynamische Linker, wenn das Programm
bzw. die Bibliothek geladen werden.

Philipp


Tja, alles richtig, aber was hat das mit meinem Problem zu tun? ;-)

Ich möchte ein Programm (koffice-wordprocessing in der Version 1.5.2-4.1)
per rpm installieren.

Bei der Installation beschwert sich rpm, dass eine Datei libgsf-1.so.1 in
der Version x86-64 nicht in meinem System vorhanden sei. Das kann 2 Gründe
haben: entweder ist die Datei wirklich nicht vorhanden oder sie befindet
sich lediglich nicht in der rpm-Datenbank.

Im Fall, dass die rpm-Datenbank die Datei nicht registriert hat, lässt sich
ein Paket trotzdem installieren, wenn man die Option --nodeps benutzt.
Damit das Programm dann auch tatsächlich läuft (und das soll es ja), muss
natürlich die verlangte Bibliothek im System vorhanden sein.

Meines Erachtens ist die /opt/gnome/lib64/libgsf-1.so.113.0.99 genau die
gesuchte Bibliothek. Es handelt sich um eine 64bit-Version, ebenso wie das
Programm, das ich installieren möchte.

Meine Frage zielte einfach darauf, dass die 32bit-Version der libgsf-1.so.1
von ldconfig gefunden wird und die 64bit-Version nicht - auch nicht mit
einer anderen Versionsnummer, wie ja die Ausgabe von "ldconfig -p | grep -i
gsf" in meinem letzen Posting zeigte. Woran kann das liegen? Das
Verzeichnis /opt/gnome/lib64 wird sehr wohl von ldconfig berücksichtigt,
denn die /opt/gnome/lib64/libgsf-1.so.113 in diesem Verzeichnis wird angezeigt.

Das Problem liegt m. E. darin, dass die Datei
/opt/gnome/lib64/libgsf-1.so.113.0.99 nicht als libgsf-1.so.1
(libc6,x86-64) von ldconfig erkannt wird und demzufolge auch dem Programm
nicht zur Verfpgung stehen wird. Kann ich dieses Erkennen erreichen, ohne
dass ich im Sourcecode von koffice-wordprocessing rumfreckeln muss?

Freundlicher Gruß
Werner Flamme

- --
Werner Flamme, Abt. WKDV
UFZ Umweltforschungszentrum Leipzig-Halle GmbH,
Permoserstr. 15 - 04318 Leipzig
Tel.: (0341) 235-3921 - Fax (0341) 235-453921
http://www.ufz.de - eMail: werner.flamme@xxxxxx




-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)
Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org

iD8DBQFExi3tk33Krq8b42MRApDOAJ9iZ80QmX6oc10UG0lQClQf8FnM/ACggyIu
GXq71yDFqgGxO0TqyvEVIEI=
=3jBr
-----END PGP SIGNATURE-----

--
Um die Liste abzubestellen, schicken Sie eine Mail an:
suse-linux-unsubscribe@xxxxxxxx
Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken
Sie eine Mail an: suse-linux-help@xxxxxxxx

< Previous Next >