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, por lo general proporcionan paquetes binarios para todas sus aplicaciones compatibles. Si está completamente satisfecho con su instalación de Linux lista para usar, es posible que nunca necesite ejecutar un programa de 32 bits.

Algunos software comerciales de Linux, en particular los juegos, solo ofrecen versiones de 32 bits. En estos casos excepcionales, deberá configurar su máquina de 64 bits para ejecutar software de 32 bits.

Instalar las bibliotecas de 32 bits

Debido a que los procesadores x86_64 están diseñados sobre tecnología x86, aún pueden admitir programas de 32 bits sin ninguna 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 bibliotecas por usted. En Ubuntu, por ejemplo, el paquete se llama ia32-libs. Para instalarlo, simplemente abra una ventana de terminal y escriba:

sudo apt-get install ia32-libs

También puede instalarlo gráficamente desde Synaptic.

Una vez instaladas, aplicaciones como Skype y juegos como mundo de padman debería funcionar sin configuración adicional.

Problemas GTK

Cuando se ejecutan programas de 32 bits en un entorno de 64 bits, Ubuntu aún busca los motores GTK predeterminados. Esto hará que reciba un error como este: «clase ELF incorrecta». Este tipo de error puede resultar especialmente molesto en aplicaciones como Cromola nueva versión de código abierto del navegador Google Chrome.

De hecho, Ubuntu instala la versión predeterminada de 32 bits de los motores GTK en /usr/lib32/gtk-2.0, pero lo que descubrí en mi caso fue que los 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é paquetes de ubuntu.

2. Descargue el paquete y extraiga su contenido como lo haría con un archivo comprimido normal.

3. Busque el archivo de biblioteca del tema. Para qtcurve se encontró en “~/download-directory/usr/lib/gtk-2.0/2.10.0/engines/libqtcurve.so”.

4. Copie la biblioteca en el 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 requería porque el script de inicio de Chromium ya estaba configurado para buscar en «/usr/lib32/gtk-2.0». Si la secuencia de comandos de inicio del programa que está ejecutando no busca allí sino que busca /usr/lib/gtk-2.0, deberá modificar la secuencia de comandos de inicio o exportar una variable de entorno antes de iniciarlo abriendo una ventana de terminal y escribiendo :

export GTK_PATH=/usr/lib32/gtk-2.0
command-to-start-app

Si no hay una secuencia de comandos de inicio para el programa, puede crear una con el conjunto de variables de entorno anterior.

Si todo lo demás falla

Descubrí que algunas aplicaciones se niegan a comportarse bien en un entorno de 64 bits en circunstancias normales, incluso con ia32-libs instalada. La única alternativa viable además de descartar su máquina de 64 bits o descartar el software es ejecutarlo en un entorno chroot. Esto literalmente instala una versión completa de 32 bits de su sistema operativo dentro de un directorio en su computadora. Tomará más espacio que simplemente instalar algunas bibliotecas, pero asegura que todos los componentes de 32 bits, incluidos los módulos del kernel de gráficos 3D, estén instalados.

Experto Geek - Tu Guía en Tendencias Tecnológicas