Libtool und sed/grep?

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
shevegen
Beiträge: 416
Registriert: 30.03.2004 00:32:53

Libtool und sed/grep?

Beitrag von shevegen » 10.07.2007 10:18:03

Vielleicht bin ich nicht der einzige, der die Dokumentation zu Libtool etwas dürftig findet ... aber

Libtool ist ein 7584 Zeilen langes Shell-Script, das eine allgemeine Schnittstelle für shared Libraries (.so) bereit stellt.
Es parsed gcc ARGS -v bzw gcc -nostdlibs ARGS -v und arbeitet anhand dieser Information am Hostsystem weiter. Der Gedanke dahinter ist, das Libtool selbständig alle Information erhalten kann - nichts soll vor Libtool versteckt sein, auch nicht die spec Datei von GCC. Meine Fragen sind nun:

Bei Fehlermeldungen wie:
"libtool: relink: warning: `/usr/lib/gcc/i386/3.4.6/../../..//libjpeg.la' seems to be moved"
woher weiss libtool das diese .la Datei gemoved wurde?

Und, da auch .la dateien genutzt werden, schlägt manchmal ein sed/grep fehl, obwohl die
.la Datei dort existiert (!). Das passiert nun mal wenn ich etwas kompiliere, unter anderem auch in
/opt oder andere Verzeichnisse, und die Dateien automatisch symlinken lasse.

Mein Problem ist, das ich libtool nicht durchschaue, es wirkt irgendwie nicht transparent.
Wenn einer von euch eine gute Erklärung hat, oder einen Link der mehr Informationen beinhaltet
(~50 Google Ergebnisse und ich bin noch immer nicht wirklich schlauer ... ich bin aber auch
kein Experte), wäre ich sehr dankbar.

Grüsse,
shev

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Re: Libtool und sed/grep?

Beitrag von gms » 14.07.2007 21:19:43

shevegen hat geschrieben:Bei Fehlermeldungen wie:
"libtool: relink: warning: `/usr/lib/gcc/i386/3.4.6/../../..//libjpeg.la' seems to be moved"
woher weiss libtool das diese .la Datei gemoved wurde?
das ist einfach:

Code: Alles auswählen

gms@gms1 ~ $ grep libdir /usr/lib64/libjpeg.la
libdir='/usr/lib64'
shevegen hat geschrieben: Und, da auch .la dateien genutzt werden, schlägt manchmal ein sed/grep fehl, obwohl die
.la Datei dort existiert (!). Das passiert nun mal wenn ich etwas kompiliere, unter anderem auch in
/opt oder andere Verzeichnisse, und die Dateien automatisch symlinken lasse.
der Zusammenhang zwischen der Nutzung von .la Dateien und dem Fehlschlagen von sed/grep ist mir jetzt nicht ganz einsichtig. :?
shevegen hat geschrieben: Mein Problem ist, das ich libtool nicht durchschaue, es wirkt irgendwie nicht transparent.
Wenn einer von euch eine gute Erklärung hat, oder einen Link der mehr Informationen beinhaltet
(~50 Google Ergebnisse und ich bin noch immer nicht wirklich schlauer ... ich bin aber auch
kein Experte), wäre ich sehr dankbar.
leider verstehe ich dein Problem noch nicht wirklich. Die .la Dateien sollen den Anwendern die Umstellung erleichtern, statt mit Shared Objects .so und Libraries .a "arbeitet" der Anwender jetzt nur mit .la Dateien. Nachdem diese Dateien für die Anwendung nicht relevant sind, könnten die .la Dateien von Libtool verwendet werden, um dort zusätzliche Informationen zu speichern ( unter anderem das Installationsverzeichnis )

Gruß
gms

Antworten