No Ubuntu de 32 bits, pule esse pacote. Basta instalar libc6-dev e quaisquer outros pacotes que você precisar.
O pacote específico que corresponde a libc6-dev-i386 para um sistema de 32 bits é apenas libc6-dev , que você já está instalando.
Não há pacote libc6-dev-i386 para o seu sistema, porque ele está disponível apenas em sistemas de 64 bits. Isso, por sua vez, é porque sua finalidade é fornecer a capacidade de criar e executar programas de 32 bits em um sistema de 64 bits.
O Ubuntu suporta várias arquiteturas . Para PCs , significando a maioria dos desktops e laptops, incluindo os fabricado pela Apple nos últimos anos , existem dois: i386 para sistemas de 32 bits e amd64 para sistemas de 64 bits. Para o restante desta resposta, quando digo "32 bits" e "64 bits", estou me referindo especificamente a essas arquiteturas. (Estes confusamente chamado arquiteturas têm diferenças importantes , hardware pode suportar ambos ou apenas i386 embora você pode precisar da versão amd64 em sistemas UEFI , e você pode verifique a arquitetura da sua máquina ou Instalação do Ubuntu .)
Os processadores de 64 bits são capazes de executar código nativo (linguagem de máquina) de 64 bits e 32 bits.
- Se você tiver a versão de 64 bits (amd64) do Ubuntu, poderá executar automaticamente programas de 64 bits.
- Você também pode executar programas de 32 bits, mas pode ser necessário instalar bibliotecas de suporte de 32 bits, incluindo a versão de 32 bits de
libc6.
Para executar, a maioria dos programas requer as bibliotecas fornecidas pelo pacote libc6 . O Ubuntu já tem esse pacote instalado. Como a maioria dos pacotes (mas não todos) no Ubuntu, o pacote libc6 é fornecido separadamente para diferentes arquiteturas.
Para criar um executável vinculado às bibliotecas fornecidas por libc6 , é necessário ter o arquivos de cabeçalho para essa biblioteca. Esses são fornecidos pelo pacote libc6-dev . O pacote libc6-dev também declara o pacote libc6 como uma dependência, porque geralmente não seria útil ter apenas os arquivos de cabeçalho, mas não a própria biblioteca. A maioria dos -dev packages declara algum pacote não- -dev correspondente como uma dependência.
Como a grande maioria dos programas exige libc6 direta ou indiretamente, mais de uma maneira de instalar a versão de 32 bits dessa biblioteca e seus arquivos de cabeçalho em um sistema de 64 bits foram fornecidos ao longo dos anos.
- A maneira mais geral, que funciona com quase todas as outras bibliotecas, é usar o suporte multiarch da APT - multiarch está habilitado por padrão em todos os sistemas Debian e Ubuntu recentes - por executando
dpkg --add-architecture i386e usandoaptouapt-getpara instalar os pacoteslibc6:i386elibc6-dev:i386.apteapt-getsuportam a especificação da arquitetura de um pacote a ser instalado usando essa sintaxe:. - No entanto, existem outras maneiras. As versões de 32 bits (
i386) de algumas bibliotecas normalmente necessárias são fornecidas como pacotesamd64-apenas especiais.libc6-i386elibc6-dev-i386são dois desses pacotes. O pacotelibc6-dev-i386fornece as versões de 32 bits dos arquivos de cabeçalho que diferem entre as arquiteturas enquanto declarando como dependênciaslibc6-dev, que é suficiente para os outros, elibc6-i386, que fornece as bibliotecas reais de 32 bits. - A maneira antiga de instalar bibliotecas comuns de 32 bits em um sistema de 64 bits era com o pacote
ia32-libs.
Com base nos comandos que você executou, parece que você tentou ambos dos dois primeiros métodos, ou uma combinação dos dois. No entanto, o seu sistema não requer nem é capaz de qualquer um, já que é um sistema de 32 bits. Os sistemas de 32 bits não precisam de nada especial para poder executar programas de 32 bits (e não podem executar programas de 64 bits).