- Conflicto de versiones (informática)
-
Véase también: DLL Hell
En computación y más específicamente en programación, un conflicto de versiones es un problema que en la gran mayoría de los casos deriva del uso de bibliotecas, aunque también puede ocurrir con programas o drivers. Las bibliotecas son un conjunto de código, compilado o no, que puede estar compartido entre varias aplicaciones. En Windows y Linux están muy extendidas, aunque son utilizadas en prácticamente todos los sistemas operativos.
Un programa al ser instalado copia al disco duro todos los archivos externos que necesita, como imágenes, archivos de ayuda... y por supuesto, bibliotecas.
El problema radica en que si dicha biblioteca ya existía, el instalador la podría sobrescribir con otra versión y los programas que usasen la biblioteca podrían no funcionar correctamente. El problema es todavía muchísimo más grave si las bibliotecas son utilizadas por el sistema operativo. En este caso, el ordenador podría dejar de funcionar.
En Linux los efectos de éstos problemas son, al menos en teoría, más leves. En general, si existen dependencias y/o conflictos en una versión de un paquete éste lo detecta y no permite al usuario continuar con la instalación.
Síntomas
Un problema derivado de un conflicto de versiones se traduce en:
- Aplicaciones que no terminan de iniciarse
- Dispositivos hardware que no funcionan correctamente (en éste caso, el conflicto sería con un driver)
- Aplicaciones que advierten de la no existencia de un archivo cuando éste existe
- Determinadas funciones o opciones de programas que no funcionan o no funcionan como deberían
Solución del problema
Algunas veces, es el propio S.O el que detecta el conflicto, y éste lo corrige, previo aviso, al momento de reiniciar el ordenador, reinstalando automáticamente la versión original de cada archivo problemático. Sin embargo esto no siempre es así, y lo más habitual es tenerlo que solucionar manualmente.
La forma más natural para solucionar el problema manualmente es averiguar qué aplicación o aplicaciones se han instalado antes de que empezaran los problemas. En los sistemas de Microsoft, Windows 95, y siguientes, se debe proceder a eliminarla mediante el uso de la herramienta "Agregar o quitar programas" o buscar una entrada para la desinstalación en el grupo "Programas" del menú Inicio. También existe un programa de Microsoft que pretende ayudar en esta tarea, llamado Administrador de conflicto de versiones (véase enlaces externos) Si se trata de programas para Windows 3.1/3.11 no existe una manera directa de desinstalarlo, a menos que se hayan monitorizado los cambios durante la instalación. En Mac OS es mucho más sencillo, basta con arrastrar el programa a la papelera (aunque tiene el inconveniente de no tener una lista de programas instalados) y en Linux, depende directamente de la distribución que se esté usando.
Si el problema no permite iniciar el equipo, y por tanto no se pueden desinstalar los programas, hay que considerar opciones más drásticas, como la reinstalación del sistema operativo o, en última instancia, el formateo de la unidad de sistema.
Enlaces externos
Conflicto de versiones en Windows
- Página del soporte de Microsoft para la herramienta Administrador de conflicto de versiones
- Tutorial de dicha herramienta para resolver conflicto con un driver gráfico
En otros S.O
Wikimedia foundation. 2010.