Logo FedoraLos micros actuales para PC tienen dos arquitecturas principales x86 (32 bits) y x64 (64 bits). Cada una tiene sus ventajas e inconvenientes que quedan fuera de este artículo. Si el sistema es de 32 bits, sólo puede ejecutar aplicaciones de esa arquitectura, en el caso contrario no existe esta limitación y se pueden ejecutar programas de las dos arquitecturas siempre que se cumplan los requisitos. Como ejemplo de aplicaciones de 32 bits se pueden destacar el SDK de Android o el programa Skype (el paquete RPM). Como vimos en el artículo de instalación de Skype no existe ninguna dificultad en la instalación del programa aunque sea de otra arquitectura. No obstante, en algunas ocasiones pueden aparecer problemas si el sistema tiene diferentes versiones de la misma librería en 32 y 64 bits.

 Este error apareció en mi equipo con una instalación limpia de Fedora 17 y con todas las actualizaciones puestas. Al querer instalar Skype 4.0 por consola usando yum localinstall paquete la consola mostraba el siguiente mensaje:

..
Error: Versiónes multilib protegidas: sqlite-3.7.11-3.fc17.i686 != sqlite-3.7.11-2.fc17.x86_64
Error: Versiónes multilib protegidas: libpciaccess-0.13.1-1.fc17.i686 != libpciaccess-0.13-2.fc17.x86_64
Error: Versiónes multilib protegidas: libcom_err-1.42.3-2.fc17.i686 != libcom_err-1.42-4.fc17.x86_64
Error: Versiónes multilib protegidas: libdrm-2.4.33-3.fc17.i686 != libdrm-2.4.33-1.fc17.x86_64
...

Como se puede observar tenemos dos librerías del mismo paquete con diferente versión. Si aparece este caso no es posible instalar las librerías de 32 bits y actualizarlas posteriormente ya que el sistema no lo permite. Siempre existe la solución “bestia” que es instalar sin respetar las dependencias pero esto puede provocar errores futuros con los programas y no es aconsejable. La forma de arreglar el problema es sencilla, pero hay que tener un poco de cuidado.

Lo primero es desinstalar los paquetes de 64 bits que provocan el error, para el primer caso ejecutaríamos como root:

yum remove sqlite-3.7.11-2.fc17.x86_64

Repetimos el proceso en cada paquete fijándonos en las dependencias que se desinstalan. Si vemos que al quitar un paquete se desinstala medio sistema paramos el proceso. Cuando quitemos todos los paquetes que bloquean la instalación podemos continuar con la instalación del programa de 32 bits. Un detalle importante y que evitará que el sistema deje de funcionar es reinstalar el metapaquete de la versión de Fedora que estamos usando, es decir, si usamos el escritorio Gnome, reinstalaremos el paquete que contiene todos los programas necesarios para trabajar con Gnome:

  • Escritorio Gnome:
    yum groupinstall "Entorno de escritorio GNOME"
  • Escritorio KDE:
    yum groupinstall "KDE Compilación de Software"

Siempre que tengamos las librerías de 32 bits podremos ejecutar cualquier programa de esa arquitectura. No es necesario instalar todo el sistema de 32 bits ya que eso gastaría espacio y no aprovecharía toda la potencia que tienen los 64 bits. El sistema por defecto instala los paquetes de la arquitectura. En el caso de querer instalar la misma versión de un paquete de 32 bits es necesario añadir .i686 al nombre del paquete. Ejemplo:

yum install glibc-devel # instalará el paquete de 64 bits.
yum install glibc-devel.i686 # instalará el paquete de 32 bits, que es lo que queremos.

Deja tus comentarios

Post comment as a guest

0
Your comments are subject to administrator's moderation.
terminos y condiciones.