curto: não
long: as variáveis de ambiente relacionadas dependem do sistema e da configuração. Para um determinado sistema / configuração, você poderia escrever um script que faz isso.
Onde os executáveis procuram compartilhada objetos em tempo de execução dão algumas dicas, mas estão incompletos. Menciona o OSX e o Solaris, mas se concentra no Linux, apontando para dois recursos:
-
Biblioteca de programas HOWTO: 3. Bibliotecas compartilhadas (que menciona
LD_LIBRARY_PATH
sem mencionar as menos -muitasLD_LIBRARY_PATH_64
, e também dá uma menção de uma linha de rpath ). - ld.so, ld-linux.so * - linker / loader dinâmico , que novamente menciona algumas das variáveis de ambiente e rpath .
Você também acharia isso útil:
-
ldconfig - configura ligações de tempo de execução do vinculador dinâmico , específico do Linux (nem OSX nem Solaris ):
ldconfig
creates the necessary links and cache to the most recent shared libraries found in the directories specified on the command line, in the file/etc/ld.so.conf
, and in the trusted directories,/lib
and/usr/lib
(on some 64-bit architectures such as x86-64, lib and/usr/lib
are the trusted directories for 32-bit libraries, while/lib64
and/usr/lib64
are used for 64-bit libraries). - Como as bibliotecas compartilhadas funcionam em um sistema mixado de 64 bits / 32 bits?
- script shlib , um script de utilitário em ncurses que lista uma variedade de variáveis de ambiente usadas para especificar onde bibliotecas compartilhadas são.
Em particular, " sudo ldconfig -v
"
-v
,--verbose
Verbose mode. Print current version number, the name of each directory as it is scanned, and any links that are created. Overrides quiet mode.
que está perto do que foi perguntado, mas fornece muita informação irrelevante. (E é em grande parte específico do Linux, embora os BSDs o usem - mas diferentes, consulte a página de manual ). Se você fizer algumas suposições sobre o formato de saída, poderá obter diretórios usando
sudo ldconfig -v 2>/dev/null | grep ':$' |sed -e 's/://'
que dá (em um sistema)
/usr/local/lib
/lib/x86_64-linux-gnu
/usr/lib/x86_64-linux-gnu
/lib
/usr/lib
Para recapitular: não existe comando , mas você pode criar um script, que é dependente do sistema.