Todas as dependências para binário compilado por terceiros

3

Eu tenho um binário, compilado por terceiros e preciso conhecer todas as dependências que ele requer. Não tenho certeza se ldd mostra tudo. Tenho certeza que o binário usa o GStreamer, e alguns pacotes de codec, mas ldd mostra apenas o GStreamer, sem pacotes de codecs ...

Alguma idéia de como fazer isso corretamente?

    
por Max Peaceprayer 17.01.2013 / 09:13

3 respostas

2

As bibliotecas podem ser carregadas em tempo de execução, dependendo do ambiente específico, dos argumentos da linha de comando, das opções de configuração e talvez até da fase da lua. As bibliotecas em si podem depender de outras bibliotecas também. Então, determinar o que é realmente requerido parece impossível, a menos que você saiba o que seu binário está fazendo por dentro.

    
por 17.01.2013 / 10:12
1

ldd é um bom começo. Então, você poderia executar o binário através de strace -fo /tmp/strace.log e dar uma olhada lá para o que o aplicativo está tentando encontrar.

Comece com grep de ENOENT para ver o que é não encontrar.

Você também pode dar uma olhada na documentação enviada com esse aplicativo e possivelmente em seus registros em execução, se houver.

    
por 21.01.2013 / 16:59
0

O ldd mostra apenas links dependências, ou seja, ele não mostra o que pode ser necessário para executar o programa com sucesso, apenas o que é necessário para executar o programa.

Você deve fazer a resolução de dependências através do seu gerenciador de pacotes.

    
por 17.01.2013 / 09:22