Se a probabilidade de que as dependências para a versão de um pacote que está no lançamento do Ubuntu (ou outras disposições derivadas do Debian) é a mesma que a deps para a versão que você está tentando construir, você pode executar apt-get build-dep nginx
ou aptitude build-dep nginx
- isso não instalará o pacote nginx, mas instalará todos os listados como dependências (e suas dependências, como sempre), o que inclui libssl-dev
(o pacote que você está procurando atualmente).
Na maioria dos casos, isso permitirá que a compilação da outra (presumivelmente mais recente) versão seja concluída com êxito, além de evitar que você instale cada biblioteca e seus arquivos de cabeçalho um por um. Mesmo se houver novas dependências na outra versão que você está tentando construir, build-dep <package>
é um bom lugar para começar, pois isso significa que você só precisa instalar manualmente as novas dependências extras.
Como exemplo, o resultado em um dos meus servidores é:
user@host:~$ sudo aptitude build-dep nginx
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initialising package states... Done
The following NEW packages will be installed:
autotools-dev cvs{a} debhelper gettext{a} html2text{a} intltool-debian{a}
libcroco3{a} libmail-sendmail-perl{a} libpcre3-dev libpcrecpp0{a}
libssl-dev libsys-hostname-long-perl{a} po-debconf{a} zlib1g-dev
0 packages upgraded, 14 newly installed, 0 to remove and 19 not upgraded.
Need to get 7,217kB of archives. After unpacking 22.9MB will be used.
Do you want to continue? [Y/n/?]
Pretende instalar algumas bibliotecas e cabeçalhos, para ativar uma construção nginx, mas não o próprio nginx.
Uma coisa a notar é que se você está compilando sua própria cópia porque quer opções de compilação diferentes em vez de precisar de uma versão diferente por algum motivo, pode ser melhor compilar a partir da fonte do repositório para o pacote fontes diretamente. Essa pergunta SO é a primeira página útil que veio de uma pesquisa rápida, embora seja provável que você encontre tutoriais mais detalhados facilmente se precisar.
Outra pequena coisa a notar: os pacotes instalados como resultado de apt-get build-dep
serão marcados como instalados manualmente, como se você tivesse feito isso manualmente como está fazendo atualmente. Isso significa que você não pode removê-los todos de uma só vez (não há apt-get unintall-dep
ou similar) - embora isso não seja diferente da situação que você obterá de bibliotecas / cabeçalhos manuais de qualquer maneira (eu apenas mencionei o fato como alguns as pessoas esperam que haja uma maneira de desfazer uma operação build-dep
, e não há).