Frage zu Shared Libs
Mein Problem : Ich will eine Oracle-DB auf Suse 7.1 laufen lassen. Installation schlägt fehl, weil die Jungs von Oracle ihre Software nur gegen die glibc 2.1.3 haben laufen lassen. Die gibt es unter Suse 7.0, nicht aber unter Suse 7.1 (sind auch nicht auf den Suse 7.1CD's - da sind die glibc 2.2 aktuell). Meine Frage : Kann ich die glibc 2.1.3 so ohne weiteres aus der 7.0 auf Suse7.1 installieren und verwenden ? Funktioniert Suse 7.1 danach noch ?! Oder ist es besser, auf Suse 7.1 zu verzichten und Suse 7.0 zu fahren ?
Danke Alexander Seifert
On Tue, Jun 19, 2001 at 02:00:11PM +0200, alex.seifert@gmx.de wrote:
Frage zu Shared Libs
Mein Problem : Ich will eine Oracle-DB auf Suse 7.1 laufen lassen. Installation schlägt fehl, weil die Jungs von Oracle ihre Software nur gegen die glibc 2.1.3 haben laufen lassen. Die gibt es unter Suse 7.0, nicht aber unter Suse 7.1 (sind auch nicht auf den Suse 7.1CD's - da sind die glibc 2.2 aktuell).
man ld.so
ENVIRONMENT ... LD_PRELOAD A whitespace-separated list of additional, user- specified, ELF shared libraries to be loaded before all others. This can be used to selectively over ride functions in other shared libraries. For setuid/setgid ELF binaries, only libraries in the standard search directories that are also setgid will be loaded.
Reinhard
Hallo,
alex.seifert@gmx.de schrieb:
Mein Problem :
Das sind eigentlich zwei: a)
Ich will eine Oracle-DB auf Suse 7.1 laufen lassen. Installation schlägt
b) Deine Zeilen sind zu lang.
Kann ich die glibc 2.1.3 so ohne weiteres aus der 7.0 auf Suse7.1 installieren und verwenden ?
Da die Versionsnummer anders ist, sollten alle Programme, die bisher die glibc 2.2 verwenden, diese immer noch nutzen. Allerdings kann ich nicht sagen, ob Oracle dann die alte verwendet. Wenn nicht, packe diese in ein spezielles Verzeichnis und spiele mit LD_LIBRARY_PATH im Startskript von oracle.
Funktioniert Suse 7.1 danach noch ?! Oder ist es besser, auf Suse 7.1 zu verzichten und Suse 7.0 zu fahren ?
Wenn Du Support von Oracle in Anspruch nehmen willst, solltest Du nachschauen, unter welchen Distris die DB zertifiziert ist - Suse 7.1 gehoert dann bestimmt nicht dazu, wenn glibc 2.1 verlangt wird, aber nur 2.2 da ist.
Gruss
Holger
On Tue, Jun 19, 2001 at 10:56:16PM +0200, Holger Dietze wrote:
Kann ich die glibc 2.1.3 so ohne weiteres aus der 7.0 auf Suse7.1 installieren und verwenden ?
Da die Versionsnummer anders ist, sollten alle Programme, die bisher die glibc 2.2 verwenden, diese immer noch nutzen.
Glaube ich nicht. In den schon fertigen binaries steht nicht drin, dass sie z.b. eine libc-2.1.3.so haben wollen. Laut ldd wollen sie sogar nur "libc.so.6" aber das sagt eventuell nicht viel.
Reinhard
On Wed Jun 20, 2001 at 00:17:23 +0200, Reinhard Foerster wrote:
On Tue, Jun 19, 2001 at 10:56:16PM +0200, Holger Dietze wrote:
Kann ich die glibc 2.1.3 so ohne weiteres aus der 7.0 auf Suse7.1 installieren und verwenden ?
Da die Versionsnummer anders ist, sollten alle Programme, die bisher die glibc 2.2 verwenden, diese immer noch nutzen.
Glaube ich nicht. In den schon fertigen binaries steht nicht drin, dass sie z.b. eine libc-2.1.3.so haben wollen. Laut ldd wollen sie sogar nur "libc.so.6" aber das sagt eventuell nicht viel.
Woody: $ strings /bin/ls | grep LIBC GLIBC_2.2 GLIBC_2.1 GLIBC_2.2.3 GLIBC_2.1.3 GLIBC_2.0 $ strings /lib/libc.so.6 | grep LIBC GLIBC_2.0 GLIBC_2.1 GLIBC_2.1.1 GLIBC_2.1.2 GLIBC_2.1.3 GLIBC_2.2 GLIBC_2.2.1 GLIBC_2.2.2 GLIBC_2.2.3
Potato: $ strings /bin/ls | grep LIBC GLIBC_2.1 GLIBC_2.0 $ strings /lib/libc.so.6 | grep LIBC GLIBC_2.0 GLIBC_2.1 GLIBC_2.1.1 GLIBC_2.1.2 GLIBC_2.1.3
Die glibc definiert gewisse Symbole und darauf kommt´s an...
Adam
Reinhard Foerster schrieb:
On Tue, Jun 19, 2001 at 10:56:16PM +0200, Holger Dietze wrote:
Kann ich die glibc 2.1.3 so ohne weiteres aus der 7.0 auf Suse7.1 installieren und verwenden ?
Da die Versionsnummer anders ist, sollten alle Programme, die bisher die glibc 2.2 verwenden, diese immer noch nutzen.
Glaube ich nicht. In den schon fertigen binaries steht nicht drin, dass sie z.b. eine libc-2.1.3.so haben wollen. Laut ldd wollen sie sogar nur "libc.so.6" aber das sagt eventuell nicht viel.
Es steht aber im Symlink "libc.so.6":
lrwxrwxrwx 1 root root 13 Apr 17 22:30 /lib/libc.so.6 -> libc-2.1.3.so
(Bei mir gibt es keine glibc2.2, sondern nur die 2.1.3). Hier ging es um Programme, die die (schon installierte) 2.2 voraussetzen. Im System sollte also der entsprechende Symlink richtig gesetzt sein, und solange die Installation der aelteren Version diesen Link unangetastet laesst, merken die _schon_funktionierenden_ Programme davon nichts. Ich halte ausserdem ldconfig fuer schlau genug, die neueste Version als Ziel des Symlinks auszuwaehlen.
Holger
lug-dd@mailman.schlittermann.de