Linux-Linker-Problem mit einigen dynamischen Libs

badday

Erfahrenes Mitglied
Hallo zusammen,

ich habe folgendes Szenario: Ich habe ein Programm und linke dieses mit verschiedenen Libs, die teilweise selbst wiederum Abhängigkeiten haben. Alle libs, gegen die gelinkt wird, liefere ich im bin-Verzeichnis mit, in der auch das executable liegt.

Um den Linker anzuweisen, hier zu schauen, habe ich die executable mit der Option
Code:
-Wl,-rpath,$ORIGIN
gelinkt. Gemäß der Ausgabe von
Code:
readelf -d | grep RPATH
war das soweit auch erfolgreich. Gebe ich nun aber
Code:
ldd -v <binary>
ein, so werden 2 Libs nicht aufgelöst. Andere, die völlig analog mit dem selben Mechanismus und den selben Linker-Optionen gelinkt werden, werden völlig korrekt aufgelöst und gegen die Exemplare, die im bin-Ordner sind, gelinkt.
Der Ausgabe ist auch zu entnehmen, dass er offenbar direkt aus dem executable versucht, diese libs zu laden, es sind also nicht Abhängigkeiten anderer dyn. gelinkter libs. Andere, die ebenfalls direkt vom executable geladen werden, werden aber gelinkt wie gedacht.

Meine Frage daher: Woran könnte das liegen? Hat es vll. damit was zu tun, dass irgwelche statisch gelinkten libs in anderen rpaths nach Abhängigkeiten suchen?

Wenn weitere Infos benötigt werden, werde ich diese so schnell wie möglich bereitstellen.


Vielen Dank!


Gruß,

badday
 
Zuletzt bearbeitet:
Zurück