Por algum motivo, tenho que instalar alguns pacotes do Ubuntu 16.04 para o Ubuntu 17.10. Eu tentei, apt update && apt install pkgname
mas sempre há alguns problemas de dependência.
O que estou tentando é pegar o source de algum pacote com o comando apt source pkgname
.
Descobri que tenho três coisas:
pkgname.dsc
pkgname.orig.tar.gz
pkgname.debian.tar.xz
O .dsc
arquivo parece conter algumas informações de pkgname
, o .orig.tar.gz
arquivo é o código-fonte, mas não sei qual .debian.tar.xz
é o arquivo.
Por exemplo, para instalar libpcl-dev
, fiz as coisas abaixo:
apt source libpcl-dev && tar xzvf pcl.orig.tar.gz && cd pcl && mkdir build && cd build && cmake .. && make install && make
.
Parece funcionar, mas não consigo o que preciso, o que significa que não há um arquivo nomeado libpcl-dev
em /usr
.
Instalar o
.deb
pacote binary ( ) doslibpcl-dev
repositórios 16.04 em um sistema 17.10 é difícil, se não impossível, devido às suas muitas dependências, algumas das quais devem ser instaladas a partir do 16.04 e podem entrar em conflito com pacotes já instalados do 17.10.No entanto, é possível compilar o pacote fonte de 16.04 em um sistema 17.10, porque todas as dependências de compilação estão disponíveis em 17.10.
Primeiro faça um diretório para trabalhar
Obtenha o pacote fonte
Provavelmente, quando você executar
debuild
, receberá um "comando não encontrado" dizendo para instalardevscripts
; instale-o e execute -odebuild
novamente. Agora ele irá reclamar que algumas dependências de construção estão faltando; instale-os e execute -osdebuild
novamente, e agora a compilação deve ser bem-sucedida (os errosdebsign
podem ser ignorados). Você terá alguns.deb
s em seu~/libpcl
diretório, que poderá instalar normalmente.Aviso: se alguns bugs, incluindo problemas de segurança, forem encontrados nesta versão do PCL e uma versão corrigida for lançada em 16.04, você não o obterá automaticamente; em vez disso, você deve repetir o processo acima com o novo pacote fonte.