Re: Analysieren von Abhaengigkeiten mit ldd

From: J Wunsch <j(at)uriah.heep.sax.de>
Date: Mon, 7 May 2001 18:54:30 +0200

As Thorsten Steentjes wrote:

> Ich nutze ldd in einem install-script, um zu pruefen, ob auf dem
> Zielsystem die notwendigen libraries installiert sind. Dazu schneidet
> sed mir die Pfadnamen aus. Das funktioniert soweit fuer Linux und
> Solaris. Fuer FreeBSD werde ich dann wohl ein extra script schreiben
> muessen :-\

Setz' Dich doch mal mit John Polstra in Verbindung und frage ihn,
ob man da nicht was machen kann. Er hat viel an diesem ELF-Kram
gewerkelt und sollte da eine Kennung haben.

Problem ist, daß FreeBSD's ldd letztendlich das Binary in der Tat erst
einmal startet. Im Environment bekommt es aber paar kryptische
Variablen gesetzt, die den dynamischen Linker veranlassen, statt der
tatsächlichen Programmausführung nur die Abhängigkeiten zu dumpen und
dann ein _exit() zu machen.

% env LD_TRACE_LOADED_OBJECTS=t /usr/bin/false
        libc.so.5 => /usr/lib/libc.so.5 (0x28067000)

Damit ist natürlich vom Prinzip her erst einmal klar, daß es sich um
ein ausführbares Programm handeln muß. Die andere Frage ist
natürlich, warum ein .so /kein/ ausführbares Programm ist. (Hatte
Martin Cracauer neulich schon einmal gefragt.) Ggf. gibt's auch noch
eine andere Implementierungschance.

-- 
cheers, J"org               .-.-.   --... ...--   -.. .  DL8DTL
http://www.sax.de/~joerg/                        NIC: JW11-RIPE
Never trust an operating system you don't have sources for. ;-)
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Mon 07 May 2001 - 19:20:18 CEST

search this site