[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Verständnisfrage zu ldd



Jörg Schütter <joerg@schuetter.org> wrote:

> Anhand dieser Information habe ich ein root-jail (chroot) für dieses
> Programm gebaut und versucht das Programm zu starten. So weit so gut,
> wenn ich aber das Programm erneut starte (mit anderen Parametern), da
> damit das laufende Programm gestuert wird, erhalte ich etliche
> Fehlermeldungen.

ldd zeigt nur die Libraries, die dynamisch an das Programm gebunden
(gelinkt) sind und die beim Starten des Programms durch den dynamischen
Linker der libc dazugelinkt werden.

> Durch Aufruf von strace konnte ich feststellen, daß dieses Programm
> noch weitere Libs benötigt. Warum konnten diese durch den ldd-Befehl
> nicht ermittelt werden.

Ein Programm kann z.B. durch dlopen() weitere Bibliotheken nachladen,
allerdings steht dieses Nachladen dann unter der Kontrolle des Programms
und _nicht_ unter der Kontrolle des dynamischen Linkers und kann daher
von ldd nicht angezeigt werden.

dlopen() wird sehr gerne für Plugins benutzt, die zur Laufzeit
nachgeladen werden können, aber die nicht zwingend benötigt werden.

transcode z.B. benutzt diese Methode.

S°

-- 
BOFH excuse #385:

Dyslexics retyping hosts file on servers



Reply to: