Tag: rpath
rpath ist eine option mit der Laufzeit-linker (ld.so) zum einfügen einer RPATH-header in beiden binaries und shared libraries. Dieser header gibt den Pfad suchen, um für das Auffinden von Bibliotheken.
2
Antworten
Hinweis: Vollständige Beispiel unten. Original-Frage folgt: Ich Probleme mit ld ' s -rpath parameter mit $ORIGIN. So konnte ich nicht finden ein vollständiges Beispiel, ich dachte, ich würde versuchen eins selbst zu schreiben, so dass ich und
3
Antworten
Unter Linux/GCC nutze ich die -rpath-flag ändern von ausführbaren Dateien-Suchpfad für shared-libraries ohne Anlassen mit Umgebungsvariablen. Kann dies auch erreicht werden, auf Windows? Soweit ich weiß, dlls werden immer gesucht, in das Verzeichnis der ausführbaren Datei und
2
Antworten
Beim Bau einer Binär-oder Bibliothek, unter Angabe der rpath, d.h. -Wl,rpath,<path/to/lib> sagt dem linker, wo Sie die benötigte Bibliothek zur Laufzeit der binären. Was ist die UNIX-Philosophie in Bezug auf absolute und relative Pfade hier? Ist es
3
Antworten
Habe ich eine binäre "CeeloPartyServer", die zu finden, braucht libFoundation.also zur Laufzeit, die auf einem FreeBSD-Rechner. Sie sind beide in das gleiche Verzeichnis. Ich kompilieren (auf einer anderen Plattform, mithilfe eines cross-Compilers) CeeloPartyServer mit linker flag "-rpath=$ORIGIN".
2
Antworten
Bei der Einstellung link-Bibliotheken in der folgenden Art und Weise target_link_libraries (SOME_TARGET -L/somedir -lfoo) cmake nicht handhaben RPATHs. Ist mit '-L' und '-l' nicht das beste, oder wirklich nur falsch? Beim erstellen meines eigenen Finden*.cmake ich in
2
Antworten
Ich bin versucht, zu schreiben eine matlab-mex-Funktion, die verwendet libhdf5; Meine Linux-Installation bietet libhdf5-1.8 shared-libraries und-Header. Aber meine version von Matlab r2007b, bietet eine libhdf5.so aus der 1.6 Version. (Matlab .mat Dateien bootstrap im HDF5, offenbar). Wenn
1
Antworten
Ich versuche angeben, rpath in meiner binäre. Mein makefile sieht wie folgt aus- CC=gcc CFLAGS=-Wall LDFLAGS= -rpath='../libs/' main: main.c gcc -o main main.c clean: rm -f main main.o Aber wenn ich Abfrage rpath mit dem Befehl readelf
4
Antworten
Ich bin einfach nur neugierig hier. Ich haben ein gemeinsames Objekt: gcc -o liba.so -fPIC -shared liba.c Und eine weitere gemeinsame Objekt, die links gegen die ehemalige man: gcc -o libb.so -fPIC -shared libb.c liba.so Nun, wenn
4
Antworten
Ich bin mir bewusst, dass es möglich ist, mit readelf -d <elf> | grep RPATH zu inspizieren, um einen bestimmten binären aus der Schale, aber ist es möglich, innerhalb eines Prozesses? Sowas (meine ganz aus den system
4
Antworten
Für die Bequemlichkeit habe ich noch die relevanten manpages unten. Meine (mis -) Verständnis erste: Wenn ich brauche, um verschiedene Optionen mit , bedeutet, dass die zweite -Wl keine andere option, denn es kommt vor , was
15
Antworten
Habe ich eine shell, die läuft CentOS. Für ein Projekt, das ich mache, brauche ich python 2.5+, aber centOS ist ziemlich abhängig von 2.4. Von dem, was ich gelesen habe, eine Reihe von Dinge, die brechen, wenn
4
Antworten
Unter Windows, ich bin cross-kompilieren eines Programms für ARM/linux unter Verwendung von CodeSourcery ' s cross-compiler-suite. Ich benutze mingw msys als mein Kommando-interpreter, und sehr oft wird es mangle meine Wege und Pfade. Zum Beispiel, zu bauen,
5
Antworten
Ich habe gerade ein einfaches Beispiel der Verwendung von ld - -rpath option mit $ORIGIN hier (siehe 2. Antwort für eine funktionierende version). Ich werde versuchen, zu erstellen ein Beispiel, wo main.run links zu foo.sodie wiederum links