Nota sobre posible duplicado:
AFAIK, esto no es un duplicado de ¿Cómo resuelvo dependencias insatisfechas después de agregar un PPA? de lo contrario, pruébelo resolviendo el problema de prueba que menciono a continuación utilizando cualquier respuesta de allí.
Antecedentes:
Me enfrenté a este problema antes Cómo arreglar la instalación de vino en Ubuntu 14.04.3LTS de 64 bits . Se resolvió mediante la revisión manual / humana de todas las dependencias recursivas del paquete de destino ( wine).
Reproduzca el problema (caso de prueba):
Creemos la misma situación tranquila simplificada con solo 1 paquete de problemas.
- Instale Ubuntu 14.04 nuevo en VirtualBox.
- Abra
software-properties-gtky habilite elbackportsrepositorio. Obtener la última lista de paquetes
sudo apt-get updateEjecute
apt-get -s install winepara confirmar quewinese puede instalar.Instale el paquete problemático
libcgmanager0desde puertos$ apt-cache policy libcgmanager0 libcgmanager0: Installed: 0.24-0ubuntu5 Candidate: 0.24-0ubuntu7.5 Version table: 0.39-2ubuntu2~ubuntu14.04.1 0 100 http://dz.archive.ubuntu.com/ubuntu/ trusty-backports/main amd64 Packages 0.24-0ubuntu7.5 0 500 http://dz.archive.ubuntu.com/ubuntu/ trusty-updates/main amd64 Packages 0.24-0ubuntu7.1 0 500 http://security.ubuntu.com/ubuntu/ trusty-security/main amd64 Packages *** 0.24-0ubuntu5 0 500 http://dz.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages 100 /var/lib/dpkg/statusFuerza
aptpara instalar lalibcgmanager0versión0.39-2ubuntu2~ubuntu14.04.1sudo apt-get install libcgmanager0=0.39-2ubuntu2~ubuntu14.04.1
Ahora terminamos en la misma situación del usuario a partir de la pregunta mencionada en segundo plano, la instalación de Wine falla con una dependencia insatisfecha, mostrando solo los paquetes de dependencia de primer nivel.
apt-get -s install wineReading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: wine : Depends: wine1.6 but it is not going to be installed E: Unable to correct problems, you have held broken packages.apt-get -s install wine1.6Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: wine1.6 : Depends: wine1.6-i386 (= 1:1.6.2-0ubuntu4) E: Unable to correct problems, you have held broken packages.apt-get -s install wine1.6-i386Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: wine1.6-i386:i386 : Depends: libglu1-mesa:i386 but it is not going to be installed or libglu1:i386 Depends: libgphoto2-6:i386 (>= 2.5.2) but it is not going to be installed Depends: libgphoto2-port10:i386 (>= 2.5.2) but it is not going to be installed Recommends: libsane:i386 but it is not going to be installed E: Unable to correct problems, you have held broken packages.
No es práctico seguir las dependencias apt-get installuna por una.
Solución ideal:
El verdadero problema aquí
aptno se pudo instalar lalibcgmanager0:i386versión0.39-2ubuntu2~ubuntu14.04.1porque el repositorio de backports tiene una prioridad100inferior a la versión0.24-0ubuntu7.5delupdatesrepositorio con500aptno se pudo instalar lalibcgmanager0:i386versión0.24-0ubuntu7.5porquelibcgmanager0:amd64está instalada con una versión diferente0.39-2ubuntu2~ubuntu14.04.1
La solución más rápida es forzar la instalación de la misma versión i386 desde puertos
sudo apt-get install libcgmanager0:i386=0.39-2ubuntu2~ubuntu14.04.1
o rebajarlo (amd64) a cualquier versión de repositorios regulares
sudo apt-get install libcgmanager0=0.24-0ubuntu7.5
Formas / herramientas que he probado:
- La desactivación de PPA no tiene relación con el problema.
- Utilizando
aptitudeen modo interactivo, trae solo soluciones con muchas eliminaciones ( > 200 !!! ). - Use
apt-get installmanualmente siguiendo el árbol de dependencias. No práctico, ya que las dependencias de primer y segundo nivel no generaron mensajes significativos sobre el conflicto. debfosterpuede generar dependencias recursivas pero solo para paquetes ya instalados. Sin embargo,wineaún no está instalado.
Tema / Mis intereses:
Digamos que quiero instalar wine sin conocer el problema del libcgmanager0paquete (o exactamente el libcgmanager0:amd64=0.39-2ubuntu2~ubuntu14.04.1que ya está instalado).
Estoy buscando un método de depuración o una forma de saber el nombre del paquete problemático y comprender rápidamente lo que estaba sucediendo.
¿Cómo depurar problemas de dependencias insatisfechas en general?
Puede haber algunas opciones nuevas en
dpkg/apt/aptitudeque tracen el solucionador de dependencias interno. Eso puede mostrarselibcgmanager0en su salida.Si no hay una respuesta canónica a esto, ¿alguien podría mostrarme una mejor manera de generar la lista de dependencias recursivas o simular el solucionador de dependencias con más detalles que puedan ayudar a solucionar el problema?
¿Por qué todas las dependencias? Porque quiero verificar la salida de los siguientes comandos para todos los paquetes a la vez.
apt-cache policy <all-dependencies>apt-get -s install <all-dependencies>
fuente

backportsversión?libcgmanager, sino con una dependencia? Usted mencionó recursivamente la lista de dependencias. ¿Lo has intentadoapt-rdepends?wine(u otro paquete afectado) con-o Debug::pkgProblemResolver=yes?Respuestas:
Créditos y gracias van a @muru .
Estaba buscando cualquier comando u opción de depuración que pueda mostrarme el nombre del paquete de problemas (
libcgmanager0en este caso de prueba).apt-get -s -o Debug::pkgProblemResolver=yes install wineTiene una salida detallada, silenciosa, difícil de entender. Debería estar bien, si me familiarizo con él.
echo q | aptitude -s install wineSalida mínima pero aviso claro sobre el conflicto.
Otro punto que estaba buscando es minimizar el resultado solicitado por el OP. En lugar de solicitar
apt-cache policysolo dependencias de primer / segundo nivel. Lo solicitaría para todas las dependencias recursivas a la vez.apt-rdepends wine 2>/dev/null | grep "^[a-zA-Z]" | sortTenga en cuenta que
apt-rdependsestá emulando,apt-cachepor lo que su resultado puede ser diferente al dedebfoster. Otro punto, ambas herramientas no distinguen entre arch (i386 o amd64), solo muestran nombres.Como el enlace anterior se puede eliminar más adelante, aquí está la salida completa de todos los comandos anteriores.
fuente