gratis - Cómo instalar ia32-libs en Ubuntu 14.04 LTS(Trusty Tahr)
ubuntu 16.04 requisitos (11)
¡Lo tengo finalmente! Aquí está mi camino, y espero que pueda ayudarte :)
sudo apt-get install libc6:i386
sudo -i
cd /etc/apt/sources.list.d
echo "deb http://old-releases.ubuntu.com/ubuntu/ raring main restricted universe multiverse" >ia32-libs-raring.list
apt-get update
apt-get install ia32-libs
rm /etc/apt/sources.list.d/ia32-libs-raring.list
apt-get update
exit
sudo apt-get install gcc-multilib
No sé la razón por la que necesito instalarlos, pero funciona en mi computadora. Cuando termine de instalar estos paquetes, es hora de intentarlo. Oh sí, tengo que decírtelo. Esta vez, cuando desee compilar su código, debe agregar -m32
después de gcc
, por ejemplo: gcc -m32 -o hello helloworld.c
. Solo make clean
y make
nuevo. Buena suerte amigos.
PD: mi entorno es: Ubuntu 14.04 de 64 bits (Trusty Tahr) y GCC versión 4.8.4. He escrito la solución en mi blog, pero está en chino :-) - Cómo comparar el programa de 32 bits bajo ubuntu14.04 .
Instalé Ubuntu 14.04 (Trusty Tahr) ayer. Todo parece estar bien. Pero cuando traté de compilar algún código C, encuentro el siguiente error. El error parece deberse al SO que carece del soporte de arquitectura de 32 bits. El resultado del error es el siguiente:
/usr/bin/ld: i386 architecture of input file `./libsc.a(ftl_msg.o)'' is incompatible with i386:x86-64 output
/usr/bin/ld: i386 architecture of input file `./libsc.a(libsc_debug.o)'' is incompatible with i386:x86-64 output
/usr/bin/ld: i386 architecture of input file `./libsc.a(libsc_str.o)'' is incompatible with i386:x86-64 output
/usr/bin/ld: i386 architecture of input file `./libsc.a(libsc_cfg_common.o)'' is incompatible with i386:x86-64 output
Solía apt-get install ia32-libs
cuando estaba usando Ubuntu 12.04 (Precise Pangolin). Pero lo que sé es que Ubuntu ha eliminado las ia32-libs desde Ubuntu 13.10 (Saucy Salamander). ¿Como puedo solucionar este problema?
El problema es que, en muchos casos, los paquetes ya son multiarcas, por lo que el paquete i386 no está disponible, pero otros paquetes aún dependen únicamente del paquete i386. Este es un problema en el repositorio, y los administradores de los repos deben solucionarlo
Estas bibliotecas alternativas funcionaron para mí:
sudo apt-get update
sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 lib32stdc++6
Instala la biblioteca múltiple de gcc.
sudo apt-get install gcc-multilib
La mejor respuesta que he visto es ¿Cómo ejecutar aplicaciones de 32 bits en Ubuntu de 64 bits?
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386
sudo ./adb
Para mí, tengo que correr
sudo dpkg --add-architecture i386
antes de ejecutar la respuesta de Mike Tang. De lo contrario, no puedo instalar ia32-libs.
Puede intentar esto para instalar la biblioteca de 32 bits (no todo en ia32-libs):
sudo apt-get install program:i386
sudo dpkg --add-architecture i386
puede ser necesario (si nunca lo ha ejecutado).
O si desea instalar todo el ia32-lib en su lugar, intente con el siguiente orden:
sudo -i
cd /etc/apt/sources.list.d
echo "deb http://old-releases.ubuntu.com/ubuntu/ raring main restricted universe multiverse" >ia32-libs-raring.list
apt-get update
apt-get install ia32-libs
PD: De esta manera, puede instalar ia32-libs
. Sin embargo, agregamos la fuente de 13.04 en su lugar, por lo tanto, puede haber algún problema desconocido. Después de instalar ia32-libs
, le recomiendo que elimine el ia32-libs-raring.list
en /etc/apt/sources.list.d
, y haga sudo apt-get update
.
Si desea corregir la dependencia de Android SDK, puede probar este siguiente:
sudo apt-get install -y libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 lib32z1
Tuve el mismo problema que el anterior y Eclipse sugirió la instalación:
Hint: On 64-bit systems, make sure the 32-bit libraries are installed:
"sudo apt-get install ia32-libs"
or on some systems,
"sudo apt-get install lib32z1"
Cuando traté de instalar ia32-libs, Ubuntu me pidió que instalara otros tres paquetes:
$ sudo apt-get install ia32-libs
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package ia32-libs is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
lib32z1 lib32ncurses5 lib32bz2-1.0
E: Package ''ia32-libs'' has no installation candidate
$
$ sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
Con Android Studio e intellij, también tuve que instalar la versión de 32 bits de libstdc ++ 6:
sudo apt-get install lib32stdc++6
Una solución es agregar el paquete Debian correspondiente a su repositorio. Para esto, escriba los siguientes comandos:
echo "deb ftp.us.debian.org/debian wheezy main" >> /etc/apt/sources.list
sudo apt-get update
sudo apt-get install ia32-libs-i386
La primera línea escribe al final del archivo sources.list
la forma del paquete. Esto funciona para mí Ojalá eso te ayude
Simplemente instale la versión de 32 bits del programa, en lugar de la versión de 64 bits.
Esto es mucho más seguro que instalar paquetes que no están destinados a la distribución en cuestión.
Recibí esta sugerencia de las instrucciones de instalación de Google Earth para Ubuntu 14.04 . Google Earth solía emplear ia32-libs
en Ubuntu 12.04 de 64 bits.
Citando webupd8.org :
El paquete ia32-libs ya no está disponible en Ubuntu, comenzando con Ubuntu 13.10. El paquete fue reemplazado por soporte multiarch para que ya no lo necesite, pero algunos paquetes de 64 bits (que en realidad son aplicaciones de 32 bits) aún dependen de este paquete y debido a esto, no se pueden instalar en Ubuntu 14.04 o 13.10, 64bit. [...]
La "solución" o más específicamente la forma correcta de instalar estas aplicaciones que dependen de ia32-libs es simplemente instalar el paquete de 32 bits en Ubuntu 64bit. Por supuesto, eso instalará bastantes paquetes de 32 bits, pero así es como funciona Multiarch.
El problema con algunos programas (como Google Earth) es que el paquete de 32 bits no admite multiarch. En consecuencia, algunas dependencias de 32 bits deben instalarse manualmente para que la versión de 32 bits del programa se ejecute en Ubuntu de 64 bits.
sudo dpkg --add-architecture i386 # only needed once
sudo apt-get update
sudo apt-get install libfontconfig1:i386 libx11-6:i386 libxrender1:i386 libxext6:i386 libgl1-mesa-glx:i386 libglu1-mesa:i386 libglib2.0-0:i386 libsm6:i386
sudo -i
cd /etc/apt/sources.list.d
echo "deb http://archive.ubuntu.com/ubuntu/ precise main restricted universe multiverse" >ia32-libs-raring.list
apt-get update
apt-get install ia32-libs
rm /etc/apt/sources.list.d/ia32-libs-raring.list
apt-get update
exit
Si se encuentra en China, puede modificar "raring" a "precise" (para Ubuntu 13.04 (Raring Ringtail) y Ubuntu 12.04 LTS (Precise Pangolin) , respectivamente). Instalé Beyond Compare en Ubuntu 14.04 (Trusty Tahr).