Descobrir quais pacotes instalar para satisfazer dependências não é uma ciência exata. Mas há algumas dicas que podem ajudar você:
- Quando você está trabalhando com dependências satisfatórias para compilar algo, você quase sempre quer o pacote que termina em
-dev
. Isso é curto para desenvolvimento. Por exemplo, o pacoteopenssl
contém ferramentas de linha de comando e bibliotecas para trabalhar com criptografia.libssl-dev
contém arquivos de cabeçalho e bibliotecas para o desenvolvimento do openssl. - Para procurar um pacote por palavra-chave usando apt, use
apt-cache search
. Por exemplo, eu realmente não sabia que o libssl-dev era o nome do pacote openssl dev. Eu achei que usando este comando:apt-cache search openssl | grep dev
e depois indo com o que não parecia estar relacionado a outra linguagem / biblioteca. - Você pode ver quais pacotes você instalou usando
dpkg -l
, mas, em geral, basta encontrar o pacote que deseja e dizer ao apt para instalá-lo, se você já o tiver, então o apt informará. Outra boa dica é se você quiser saber qual pacote possui um arquivo, usedpkg -S /path/to/thefile
- Se você acabar precisando criar um pacote a partir do código-fonte, não há uma maneira fácil de resolver a árvore de dependência.
./configure
deve informar a você ou o arquivo README. Muitas vezes eles até mesmo nomeiam o pacote exato necessário. - Para descobrir o que vincular, normalmente isso está relacionado ao nome do pacote ou ao nome mais geral do que você deseja. Para nosso exemplo de libssl, você passaria apenas
-lssl
para gcc. Se você não sabe quais são as opções para-l
, dê uma olhada em / lib / (apenas remova o "lib" da frente e o ".so ..." da parte de trás para obter o 'meio' que é passado para o gcc).