Resolver dependencias de 32 bits en Debian/Ubuntu de 64 bits.

18 12 2009

Al momento de instalar un sistema GNU/Linux, básicamente Debian o Ubuntu, y dependiendo de la arquitectura de nuestra máquina, solemos seleccionar la distribución basada en 32 o 64 bits.

Particularmente, los usuarios de 64 bits solemos elegir estas distribuciones con las intenciones de sacarle todo el fruto a nuestro procesador. Pero en muchos casos solemos quedarnos a pie porque no encontramos aplicaciones que correspondan con nuestra arquitectura. Esto sucede porque aún hay un gran número de aplicaciones que no son compiladas como nativas de 64 bits.

Entonces, podemos forzar la instalación de un paquete .deb que no coincide con nuestra arquitectura utilizando el siguiente comando:

# dpkg -i –force-architecture paquete.deb
ó
# dpkg -i –force-all paquete.deb

Aunque esta forma de forzar la instalación, en la mayoría de los casos, suele ser poco eficaz, ya que si el programa depende de una biblioteca de 32 bits, el comando no sabrá como resolverla.

Por otro lado, podemos instalar manualmente estas dependencias de bibliotecas de 32 bits buscando en Synaptic “ia32” e instalar todos los paquetes que se encuentren. Para buscarlo por consola tipeamos:

# apt-cache search ia32

Además, deberemos instalar también el paquete “libc6-i386”. Podemos ver una explicación más detallada de este tema aquí.

Sin embargo, puede que esto tampoco resuelva nuestro problema.

Pero a esta altura no debemos echarnos atrás, ya que la solución esta siempre al alcance de nuestras manos. Buscando, me encuentro con Getlibs, de la cual me entero en los foros de los usuarios de Debian. Esta es una aplicación que nos permite resolver automáticamente las dependencias de binarios.

Getlibs nos permite descargar e instalar los binarios que faltan para cualquier aplicación de 32 bits en un sistema de 64 bits. A su vez, podemos descargar e instalar dependencias necesarias para correr aplicaciones 32 bits en sistemas 32 bits. Ademas podemos buscar las dependencias necesarias de un binario, o en su defecto buscarlas por su nombre.

Pero veamos en primera instancia como instalar esta aplicación.

Primero que nada, deberemos descargarnos Getlibs. Lamentablemente no encontré nada relacionado a la web del autor de esta herramienta, aunque si podemos ver, según otros blogs, su perfil en los foros de Ubuntu. Asi que para descargarlo, les dejo el siguiente enlace en Hot Share.

Una vez descargado, lo instalamos:

# dpkg -i getlibs-all.deb

Ya instalado, podemos comenzar a resolver dependencias e instalar aplicaciones 32 bits en sistemas 64 bits.

Para instalar una biblioteca de 32 bits desde un archivo .deb:

# getlibs -i nombre-paquete-i386.deb

Para descargar e instalar un paquete 32 bits:

# getlibs -w debian.org/i386-libreria.deb

Tambien podemos utilizar Getlibs para instalar una biblioteca de 32 bits, utilizando el nombre del paquete:

# getlibs -p libqt4-core

Para instalar una biblioteca 32 bits utilizando el nombre de la biblioteca:

# getlibs -l libogg.so.0

O tambien podemos utilizar Getlibs en un programa ya instalado para descargar todas las bibliotecas que faltan:

# getlibs /usr/bin/programa

Cabe destacar, que no es recomendable hacer uso y abuso de esta herramienta, con el fin de evitar inconvenientes. Lo ideal es utilizarla solo en casos muy necesarios. Todos los comandos utilizados en esta guía requieren estar logueados como root para ejecutarlas.

Aqui les dejo dos enlaces, uno con un HowTo de Getlibs y otro con una explicación sobre como correr aplicaciones 32 bits en sistemas Debian 64 bits.

Visto y publicado en: Puntogeek.com


Acciones

Information

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s




A %d blogueros les gusta esto: