Als «shared-library» getaggte Fragen

2
Warum und wie können einige gemeinsam genutzte Bibliotheken ausgeführt werden, als ob sie ausführbar wären?
Auf 32-Bit-Linux-Systemen wird dies aufgerufen $ /lib/libc.so.6 und auf 64-Bit-Systemen dies $ /lib/x86_64-linux-gnu/libc.so.6 liefert in einer Shell eine Ausgabe wie diese: GNU C Library stable release version 2.10.1, by Roland McGrath et al. Copyright (C) 2009 Free Software Foundation, Inc. This is free software; see the source for copying conditions. …

6
Welche C-Bibliotheksversion verwendet mein System?
Wie kann ich sicher sagen, welche userland C-Bibliothek mein System verwendet? Mögliche Gründe für die Verwendung dieser Informationen sind: Es gibt ein gigantisches Quellcode-Paket, das ich herunterladen möchte. Ich bin sicher, dass es ordnungsgemäße Überprüfungen durchführt und eine Mini-Bibliotheksversion auflistet. Ich bin besorgt über die ABI-Kompatibilität mit einigen Binärdateien von …



1
Warum durchlaufen Unix / Linux-Systeme keine Verzeichnisse, bis sie die erforderliche Version einer verknüpften Bibliothek gefunden haben?
Ich habe eine ausführbare Binärdatei mit dem Namen "alpha", für die eine verknüpfte Bibliothek (libz.so.1.2.7) erforderlich ist, die unter abgelegt wird /home/username/myproduct/lib/libz.so.1.2.7 Ich exportiere dasselbe in meine Terminal-Instanz, bevor ich meine ausführbare Binärdatei durch Ausführen des folgenden Befehls spawne. export LD_LIBRARY_PATH=/home/username/myproduct/lib/:$LD_LIBRARY_PATH Wenn ich nun eine andere Anwendung "bravo" spawne, die …

3
Wie überprüfe ich, ob eine gemeinsam genutzte Bibliothek installiert ist?
Meine Frage rührt von meinem Problem beim Starten von ffmpeg her. Ich habe ffmpeg installiert und es wird als installiert angezeigt: whereis ffmpeg ffmpeg: /usr/bin/ffmpeg /usr/bin/X11/ffmpeg /usr/share/ffmpeg /usr/share/man/man1/ffmpeg.1.gz Später stellte ich fest, dass einige Programme von Bibliotheken abhängen, die nicht mit der Installation selbst geliefert werden. Deshalb überprüfte ich mit …

2
Wie kann der Dynamic Linker / Loader selbst dynamisch verknüpft werden, wie von "file" gemeldet?
Betrachten wir die gemeinsame Objekt Abhängigkeiten /bin/bash, die umfaßt /lib64/ld-linux-x86-64.so.2(dynamische Linker / loader): ldd /bin/bash linux-vdso.so.1 (0x00007fffd0887000) libtinfo.so.6 => /lib/x86_64-linux-gnu/libtinfo.so.6 (0x00007f57a04e3000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f57a04de000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f57a031d000) /lib64/ld-linux-x86-64.so.2 (0x00007f57a0652000) Inspektion /lib64/ld-linux-x86-64.so.2zeigt, dass es sich um einen Symlink handelt zu /lib/x86_64-linux-gnu/ld-2.28.so: ls -la /lib64/ld-linux-x86-64.so.2 lrwxrwxrwx 1 root root 32 …



3
LD_LIBRARY_PATH ist nach sudo immer leer
Ich erhalte Fehler in der gemeinsam genutzten Bibliothek, wenn ich Software manuell zu installieren scheine. Bei der Ausführung wird echo $LD_LIBRARY_PATHes als .. nichts angezeigt . Ich habe versucht /usr/local/lib, eine .confDatei hinzuzufügen , /etc/ld.so.conf.daber es scheint, als würde sie niemals ausgeführt. Dies funktioniert auch nicht (Anführungszeichen oder auf andere …


1
Freigegebene Bibliothekszuordnungen in / proc / pid / maps
Warum /proc/pid/mapsenthält es einige Datensätze für dieselbe Bibliothek? Hier ist ein Beispiel: 7fae7db9f000-7fae7dc8f000 r-xp 00000000 08:05 536861 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.20 7fae7dc8f000-7fae7de8f000 ---p 000f0000 08:05 536861 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.20 7fae7de8f000-7fae7de97000 r--p 000f0000 08:05 536861 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.20 7fae7de97000-7fae7de99000 rw-p 000f8000 08:05 536861 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.20 Was bedeutet das ?
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.