Na minha máquina UNIX, observei que os binários estão procurando as bibliotecas compartilhadas dependentes no /lib
diretório '' por padrão, mesmo que o diretório '/lib' não esteja configurado nas variáveis ' PATH
' e ' '.LD_LIBRARY_PATH
Abaixo vejo que a biblioteca ' libssl.so.4
' é encontrada no /lib
diretório ''.
bash-3.00$ ldd openssl
/lib/libcwait.so (0x00f86000)
libssl.so.4 => /lib/libssl.so.4 (0x00408000)
Meus 'PATH' e 'LD_LIBRARY_PATH' estão abaixo:
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
Por favor, informe mw se os binários se referem ao diretório '/lib' por padrão?
Responder1
Bibliotecas (no sistema operacional Linux) estão pesquisando caminhos from /etc/ld.so.conf
(not from $PATH) . Após alterar este arquivo você deve executar:
sudo ldconfig
Você pode ver os caminhos de pesquisa da biblioteca por comando:
ld --verbose | grep SEARCH_DIR | tr -s ' ;' \\012
Caminhos padrão: no caminho padrão /lib
e, em seguida /usr/lib
, .O carregador do Linux e como ele encontra bibliotecas.