Cómo ejecutar aplicaciones de 32 bits en Linux de 64 bits

La mayoría de las distribuciones de Linux tienen versiones de 64 bits para procesadores x86_64 , como AMD Athlon II o Intel Xeon. Dado que estas distribuciones mantienen sus propios repositorios de paquetes, normalmente proporcionan paquetes binarios para todas las aplicaciones soportadas. Si está completamente satisfecho con su instalación de Linux, es posible que nunca necesite ejecutar un programa de 32 bits.

Algunos programas comerciales de Linux, en particular los juegos, sólo ofrecen versiones de 32 bits; en estos casos raros, tendrá que configurar su máquina de 64 bits para que ejecute software de 32 bits.

Instalar las bibliotecas de 32 bits

Debido a que los procesadores x86_64 están diseñados con tecnología x86, todavía son capaces de soportar programas de 32 bits sin emulación de hardware, como lo que necesitaría para ejecutar programas x86 en un entorno PowerPC o Sparc. En Linux, todo lo que necesita hacer es instalar las bibliotecas de software necesarias para ejecutar el software de 32 bits. Afortunadamente, muchas distribuciones de Linux empaquetan estas librerías para usted. en Ubuntu, por ejemplo, el paquete se llama ia32-libs . Para instalarlo, basta con abrir una ventana de terminal y escribir:

sudo apt-get install ia32-libs

También puede instalarlo gráficamente desde Synaptic o Kpackagekit en Kubuntu.

Una vez instalado, aplicaciones como Skype y juegos como World of Padman deberían funcionar sin más configuración.

Problemas de GTK

Cuando se ejecutan programas de 32 bits en un entorno de 64 bits, Ubuntu sigue buscando los motores GTK predeterminados. Esto hará que reciba un error como este: «clase ELF equivocada». Este tipo de error puede ser particularmente molesto en aplicaciones como Chromium , la nueva versión de código abierto del navegador Google Chrome.

Ubuntu instala la versión por defecto de 32 bits de los motores GTK en /usr/lib32/gtk-2.0, pero lo que descubrí en mi caso fue que temas GTK como el que estaba usando, qtcurve, no se encontraban en este directorio. El resultado fueron programas GTK realmente feos.

La solución rápida fue hacer lo siguiente:

1. Busque el paquete de 32 bits del tema que está utilizando. En mi caso, busqué paquetesubuntu .

2. Descargue el paquete y extraiga su contenido como si fuera un archivo comprimido normal.

3. Encuentre el archivo de biblioteca para el tema.For qtcurve se encontró en ~/download-directory/usr/lib/gtk-2.0/2.10.0/engines/libqtcurve.so .

4. Copie la biblioteca al directorio lib32:

sudo cp ~/download-directory/usr/lib/gtk-2.0/2.10.0/engines/libqtcurve.so /usr/lib32/gtk-2.0/2.10.0/engines/.

Para Chromium esto era todo lo que se necesitaba porque el script de inicio de Chromium ya estaba configurado para buscar en /usr/lib32/gtk-2.0 . Si el script de inicio del programa que está ejecutando no busca allí, sino en /usr/lib/gtk-2.0 , necesitará modificar el script de inicio o exportar una variable de entorno antes de iniciarlo abriendo una ventana de terminal y escribiendo:

exportación GTK_PATH=/usr/lib32/gtk-2.0
command-to-start-app>

Si no hay ningún script de inicio para el programa, puede crear uno con el conjunto de variables de entorno anterior.

Si todos los demás fallan

He encontrado algunas aplicaciones, como Boxee , que se niegan a comportarse bien en un entorno de 64 bits en cualquier circunstancia normal, incluso con ia32-libs instalado. La única alternativa viable además de tirar su máquina de 64 bits o tirar el software es ejecutarlo en un entorno chroot, que literalmente instala una versión completa de 32 bits de su sistema operativo dentro de un directorio en su ordenador. Tomará más espacio que simplemente instalar unas cuantas bibliotecas, pero asegura que todos los componentes de 32 bits, incluyendo los módulos del kernel de gráficos 3D, estén instalados.

Puede leer una guía para configurar un chroot de 32 bits en Foros de Ubuntu .

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *