pacotes de 32 bits na plataforma de 64 bits
Primeiro de tudo, você precisa permitir que seu gerenciador de pacotes instale pacotes com arquitetura diferente. Mas quem é quem? Apt é uma combinação simples de wget
e dpkg
. O gerenciador de pacotes real é dpkg
, que fornece infra-estrutura de baixo nível para manipular operações com pacotes *.deb
reais.
Então, vamos ver as arquiteturas disponíveis para o nosso caso particular:
dpkg-architecture --list-known | grep -E "amd64|i386"
ou
dpkg-architecture --list-known | ack "amd64|i386"
Como você pode ver, no nosso caso as arquiteturas são amd64
e i386
. Agora você pode permitir que o gerenciador de pacotes instale i386
packages:
sudo dpkg --add-architecture i386
Agora você pode instalar seus pacotes:
sudo aptitude update && sudo aptitude install python2.7:i386
Normalmente, a primeira instalação do pacote i386
resulta na instalação de muitos pacotes de dependência. Por exemplo, no meu teste Debian x86_64 GNU / Linux (stretch) instalando skype
(que depende de libc6:i386
) resulta na instalação de 189 pacotes:
dpkg --get-selections | ack i386 -c
O problema é que python2.7:i386
conflita com python2.7
e muitos pacotes dependem de python2.7
. Então, você não poderá instalar python2.7:i386
sem remover todo o ambiente gráfico.
Corrigir dependências quebradas
Isso é simples:
sudo apt-get install -f && sudo dpkg --configure -a