Se você quiser pegá-los todos, não há outra escolha a não ser percorrer todo o sistema de arquivos. ldconfig sabe apenas sobre as bibliotecas nos caminhos padrão e os caminhos extras para os quais está configurada para procurar (geralmente definidos em /etc/ld.so.conf* ). Os locais suspeitos usuais onde outras bibliotecas podem ser encontradas são $HOME e /opt , embora não haja limite, especialmente quando as pessoas criam aplicativos por conta própria.
Se você não confiar na saída de ldconfig -p , poderá analisar seu cache diretamente. É binário, mas usar strings remove todo o lixo (5 so / lib / matches):
strings -n5 /etc/ld.so.cache
No meu sistema, ambos fornecem os mesmos resultados, o que verifiquei com essa rapidez:
a=$(ldconfig -p | awk -F'> ' '{print $2}' | sort); # get them to the same format
b=$(strings -n5 /etc/ld.so.cache | sort -u);
echo -e "$a\n$b\n$b" | sort | uniq -u
Que verificou se alguma biblioteca na lista ldconfig -p não foi mencionada no cache. Nada foi retornado.