Na verdade, posso usar dpkg-checkbuilddeps
, que mostra as dependências de construção. Isso me deixa 99% do que eu preciso
Eu tenho um pacote fonte debian (bem tecnicamente ubuntu), ou seja, o .dsc, o .tar.gz, etc., eu quero construir isso. O dpkg-buildpackage
falha, pois não tenho todas as dependências de construção.
Normalmente eu usaria apt-get build-dep
, mas este pacote não está no apt.
Existe uma maneira 'limpa', 'apropriada' para instalar todas as dependências de compilação, dado um pacote de origem. Eu sei que poderia simplesmente abrir o arquivo debian / control, mas estou curioso para saber se existe uma maneira 'correta'.
Eu instalei build-essential
, e tenho todos os compiladores normais, etc., este pacote requer software extra.
Use mk-build-deps
, que faz parte de devscripts
.
Aqui está um exemplo de fluxo de trabalho usando a sugestão de ptman.
Supondo que você tenha baixado o arquivo .dsc
, o arquivo .orig.*z
e talvez também um arquivo .debian.*z
, descompacte o pacote fonte com:
dpkg-source -x [package_name]_[package_version].dsc
Mova-se para a pasta de origem extraída e execute:
sudo mk-build-deps -i
Isto irá criar o arquivo [package_name]-build-deps_[version].deb
e instalá-lo, além de instalar todas as dependências que ele sugere.
Agora você deve conseguir criar seu pacote a partir da fonte:
debuild
Quando terminar, você poderá remover facilmente as dependências que foram extraídas, removendo o pacote build-deps
que você gerou:
sudo apt-get purge --auto-remove [package_name]-build-deps
Eu costumo usar debuild
de devscripts
para criar pacotes e, se for relevante, ele imprime uma linha dos build-deps ausentes.
A maneira "correta" é usar pbuilder
ou similar, o que criará o pacote em um mínimo chroot
, e apenas instalará qualquer build-deps adicional como especificado pelo pacote, isso também remove um monte de outros potenciais problemas (instalações locais de bibliotecas não-empacotadas, por exemplo).
Tente:
apt-get install build-essential