En mi máquina UNIX observé que los binarios buscan las bibliotecas compartidas dependientes en el /lib
directorio ' ' de forma predeterminada, aunque el directorio '/lib' no está configurado en las variables ' PATH
' y ' LD_LIBRARY_PATH
'.
A continuación veo que la biblioteca ' libssl.so.4
' se encuentra en el /lib
directorio ''.
bash-3.00$ ldd openssl
/lib/libcwait.so (0x00f86000)
libssl.so.4 => /lib/libssl.so.4 (0x00408000)
Mi 'PATH' y 'LD_LIBRARY_PATH' están a continuación:
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
Infórmele a mw si los archivos binarios se refieren al directorio '/ lib' de forma predeterminada.
Respuesta1
Las bibliotecas (en el sistema operativo Linux) buscan rutas desde /etc/ld.so.conf
(no desde $PATH). Después de cambiar este archivo debes ejecutar:
sudo ldconfig
Puede ver las rutas de búsqueda de la biblioteca mediante el comando:
ld --verbose | grep SEARCH_DIR | tr -s ' ;' \\012
Rutas predeterminadas: en la ruta predeterminada /lib
y luego /usr/lib
.El cargador de Linux y cómo encuentra bibliotecas.