Binärdatei auf Linux-Rechner sucht standardmäßig nach Bibliotheken in /lib

Binärdatei auf Linux-Rechner sucht standardmäßig nach Bibliotheken in /lib

/libAuf meinem UNIX-Rechner habe ich beobachtet, dass die Binärdateien standardmäßig im Verzeichnis „ “ nach den abhängigen gemeinsam genutzten Bibliotheken suchen, obwohl das Verzeichnis „/lib“ in den Variablen „ PATH“ und „ LD_LIBRARY_PATH“ nicht konfiguriert ist.

Ich sehe unten, dass die Bibliothek „ libssl.so.4“ im /libVerzeichnis „ “ gefunden wird.

bash-3.00$ ldd openssl
        /lib/libcwait.so (0x00f86000)
        libssl.so.4 => /lib/libssl.so.4 (0x00408000)

Mein ‚PATH‘ und ‚LD_LIBRARY_PATH‘ sind unten:

bash-3.00$ echo $LD_LIBRARY_PATH
:/opt/oracle/product/11.2.0/client32/lib:

bash-3.00$ echo $PATH
/opt/pure/releases/purify.hp.2003a.06.15.FixPack.0214/cache/opt/star-ncf-prod/ep_patch/usr/lib:/usr/ccs/bin:/usr/bin:/usr/ucb:/etc:/bin:.:/opt/ccm71/bin:/opt/oracle/product/11.2.0/client32/bin:/opt/tools/bin:/usr/local/bin

Bitte teilen Sie mir mit, ob die Binärdateien standardmäßig auf das Verzeichnis „/lib“ verweisen.

Antwort1

Bibliotheken (unter Linux OS) suchen in Pfaden von /etc/ld.so.conf(nicht von $PATH). Nach dem Ändern dieser Datei müssen Sie Folgendes ausführen:

sudo ldconfig

Sie können die Bibliothekssuchpfade nach Befehl anzeigen:

ld --verbose | grep SEARCH_DIR | tr -s ' ;' \\012

Standardpfade: Im Standardpfad /lib, und dann /usr/lib.Der Linux-Loader und wie er Bibliotheken findet.

verwandte Informationen