Você estaria interessado em remover caminhos de bibliotecas se uma determinada biblioteca compartilhada tivesse caminhos incorporados através do recurso rpath . Esses são adicionados no momento em que a biblioteca é criada pelo vinculador.
Você pode remover (ou alterar) esses caminhos usando chrpath , por exemplo,
chrpath -d mylibraryfile.so
A remoção de nomes de caminho da variável LD_LIBRARY_PATH também é uma possível área de interesse; você pode fazer isso por meio da substituição de string e reexportar a variável. No entanto, a questão não parece se preocupar com isso. Não há variável que aja para cancelar LD_LIBRARY_PATH .
Para ver dependências de bibliotecas, a menção de /etc/ld.so.conf.d/ faz parecer que a plataforma é apenas Linux. Você pode usar ldd para listar dependências. Além do OSX, todos os BSDs também suportam ldd . Aqui está um dos scripts que eu uso para esse propósito:
#!/bin/sh
# $Id: ldd-path,v 1.1 2007/07/09 19:30:28 tom Exp $
# Edit the output of ldd for the given parameters, yielding only the
# absolute pathnames.
ldd $* | sed \
-e 's/([^)]*)//g' \
-e 's/^.*=>//' \
-e 's/[ ][ ]*//g' \
-e '/^$/d'
Mas (endereçando um comentário), não existe nenhum mecanismo portátil para dizer ao carregador para ignorar um caminho existente. A documentação do GNU ld fornece um resumo do que é solicitado e a ordem na descrição do -rpath opção. Esses itens concluem a lista:
- The default directories, normally
/liband/usr/lib.- For a native linker on an ELF system, if the file
/etc/ld.so.confexists, the list of directories found in that file.
Leitura adicional