O que aconteceu com o pacote ia32-libs?

100

O pacote ia32-libs não está mais presente nos repositórios do Ubuntu 12.04 para um sistema de 64 bits. Existe algum pacote de substituição disponível para download?

    
por Ubuntuser 24.02.2012 / 09:48

6 respostas

95

O pacote ia32-libs foi um truque para obter pacotes de 32 bits instalados em uma instalação de 64 bits. Desde a versão 11.10 do Ubuntu (Oneiric), o Multi Arch foi adicionado. Um dos objetivos é remover o pacote ia32-libs . Em vez disso, você precisa instalar as bibliotecas de 32 bits de um pacote com:

sudo apt-get install package-name:i386

Você não precisa se preocupar com isso com os pacotes nos repositórios padrão (por exemplo, wine package). Para software externo, é um pouco mais difícil porque você precisa encontrar as dependências manualmente. Nesse caso, use seu mecanismo de pesquisa favorito para encontrar as bibliotecas necessárias.

Parece que ia32-libs ainda existem, mas apenas como um pacote de conveniência para incluir bibliotecas comuns de 32 bits. Este pacote agora usa o Multi Arch para instalar os pacotes de 32 bits corretamente.

    
por Lekensteyn 24.02.2012 / 11:17
41

Ubuntu 13.10

O que aconteceu?

O pacote ia32-libs foi completamente substituído por lib32z1 lib32ncurses5 lib32bz2-1.0 . Isso não deve ser um problema porque sua funcionalidade ainda está lá, apenas em outros pacotes. No entanto, não vivemos em um mundo ideal onde todos mantenham seus pacotes e todo o software seja FLOSS, então alguns pacotes ainda dependem das ia32-libs.

Como posso instalar o pacote x que depende das ia32-libs

Existem 2 formas:

  1. Você pode empacotá-lo manualmente para que ele não dependa mais do ia32-libs . (preferido)
  2. Você pode instalar ia32-libs do repositório do Ubuntu 13.04 (Raring Ringtail) ( não é de todo preferido !, somente se o primeiro método não funcionar )

1. Reembale pacotes antigos

Vou usar o receptor citrix como exemplo, mas você pode usar esse método para qualquer pacote .deb:

Primeiro, baixe o pacote .deb do citrix receiver em seu site e faça um diretório temporário fazer o hacking.

mkdir ica_temp

Extraia o pacote

dpkg-deb -x icaclient_13.0.0.256735_amd64.deb ica_temp
dpkg-deb --control icaclient_13.0.0.256735_amd64.deb ica_temp/DEBIAN

Abra o arquivo no gedit (ou no seu editor favorito)

sudo -H gedit ica_temp/DEBIAN/control

Encontre a linha que começa com Depends:... . remova ia32-libs e adicione lib32z1 lib32ncurses5 lib32bz2-1.0

Reconstrua o pacote modificado

dpkg -b ica_temp icaclient-modified.deb

E instale-o

sudo dpkg -i icaclient-modified.deb
sudo apt-get install -f

Instalar o receptor citrix requer alguns hackers também. Você pode encontrar as instruções completas de instalação em o wiki do Ubuntu

Você pode fazer isso com qualquer pacote .deb antigo que ainda dependa de ia32-libs.

2. Instale o ia32-libs do repositório raring

Por favor, note que é uma prática muito ruim para instalar pacotes antigos! Infelizmente, para alguns instaladores binários, você não tem outra escolha.

Você pode baixar o pacote ia32-libs do repositório de raring . Faça o download e instale-o manualmente, então as dependências devem ser resolvidas.

    
por Galgalesh 22.12.2013 / 01:42
6

Eu li que você deve instalar o pacote ia32-libs-multiarch em seu lugar. No entanto, não funcionou para mim e eu recebo este erro

ia32-libs-multiarch:i386 : Depends: libgphoto2-2:i386 but it is not going to be installed.

A solução que funcionou para mim foi instalar os seguintes pacotes:

sudo apt-get install libc6:i386 libgcc1:i386 gcc-4.6-base:i386 libstdc++5:i386 libstdc++6:i386
    
por ubarb 24.08.2012 / 13:24
4

Se você obtiver esse erro, tente:

sudo apt-get update

Tente novamente:

sudo apt-get install ia32-libs

Acabei de fazer uma nova instalação do 12.04, esse pacote ainda está disponível nos repositórios. Na verdade, eu mesmo tive esse erro antes de executar atualização. Depois disso, funcionou bem.

    
por ASCPL 06.12.2012 / 16:50
1

Eu acredito que este caso de uso específico foi substituído pelos pacotes "lib32z1 lib32ncurses5 lib32bz2-1.0 lib32asound2", que é provavelmente uma resposta mais específica e útil do que dizer "você pode usar multi-arch".

    
por saurik 24.01.2013 / 22:52
-2

Eu instalei o ia32-libs como este (eu corro o Ubuntu 13.04 Raring Ringtail em uma máquina de 64 bits):

Verifique a própria arquitetura:

$ dpkg --print-architecture

Verifique se uma arquitetura estrangeira está instalada:

$ dpkg --print-foreign-architectures

Dependendo dos resultados dos dois comandos acima, os três comandos a seguir podem funcionar (demorou muito tempo para processar no meu caso):

$ sudo dpkg --add-architecture i386 && sudo apt-get update && sudo apt-get install ia32-libs
    
por LivioM 02.08.2013 / 10:46

Tags