Instalei o programa (chame-o, por exemplo progA
), construindo-o a partir do código-fonte e, finalmente, chamando sudo make install
e sudo ldconfig
.
No entanto, parece apt-get
que não recebi o memorando, porque ao instalar progB
, o que depende progA
, apt-get
recomenda que eu também instale progA
. Por que isso e o que eu poderia fazer?
apt
package-management
make
Braiam
fonte
fonte
progB
manualmente também ...Respostas:
TL; DR
checkinstall
é seu amigo ;)Após uma instalação com
sudo make install
o gerenciador de pacotes, você não sabe absolutamente nada sobre essa instalação. Mas ele sabe tudo sobre um pacote com o mesmo nome nos repositórios Ubuntu ou em um PPA.Use em
sudo checkinstall
vez desudo make install
e use uma versão superior como a versão no repositório para garantir que seu gerenciador de pacotes aceite essa versão como dependência corretaProgB
.Outras informações:
checkinstall
é realmente bacana, pois segue o que omake install
comando faria, para descobrir como criar um pacote.Isso significa que se você instalar um programa usando
make install
, mas depois se arrepender por seus pecados, tudo o que você precisa fazer ésudo checkinstall -D make install
, e esse comando:siga
make install
para descobrir o que fazcopy-cat
make install
, exceto no formato do pacote * .debinstale a partir do pacote (exatamente como
make install
teria, dado o ponto 1)), exceto também informeapt-get
-o e, portanto, substitua todos os arquivos exatamente ondemake install
os colocaria, desde que você escolha SIM para incluir os arquivos colocadosmake install
no diretório inicial também no pacote - algumas opções durante ocheckinstall
processo permitem que você escolha (obviamente, a escolha existe para que você possa exercitá-lo caso a caso)Bônus: você também pode remover um pacote (chame-o
progA
novamente) instalado usando osmake install
odes que não têmmake uninstall
suporte , seguindo ocheckinstall
processo descrito até o momento e depois fazendo o seguinte:fonte
checkinstall
- o mundo precisa saber disso!Três opções:
crie um pacote falso para
progA
: Como falsificar uma versão do pacote instalada? (existe um exemplo extenso para o TeXlive) .crie um pacote para
progA
, mais fácil se tiver umacheckinstall
opção: Como enganar dependências do apt?Crie também a
progB
partir de fontes.fonte
progA
compilada e instale aapt-get
versão. 5. Instale oapt-get
pacote sobre a versão compilada e espere o melhor.Eu recomendo usar
uupdate
a partirdevscripts
e criar um pacote como o original foi construído antes.Instale os pacotes necessários
Faça o download do pacote antigo do repositório oficial (será usado
MediaWiki
como exemplo) e do novo tar-ball do upstream.Execute
uupdate
para criar uma nova pasta de origem a partir do tar-ball upstream e do antigodebian/control
Agora você deve verificar se precisa fazer alterações nos
debian/control
arquivos etc. Se estiver pronto, você pode criar o pacote deb e instalá-lofonte