Wie löse ich nicht erfüllte Abhängigkeiten nach dem Hinzufügen eines PPA?


Zur akzeptierten Antwort gehen


Wenn ich etwas installiere, erhalte ich gelegentlich eine Fehlermeldung wie die folgende:

 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:
 package1 : Depends: package2 (>= 1.8) but 1.7.5-1ubuntu1 is to be installed
E: Unable to correct problems, you have held broken packages.
 

Wie kann ich das beheben?


549





2012-05-21




Anzahl der Antworten: 14


APT ist ein Paketverwaltungssystem für Debian und andere darauf basierende Linux-Distributionen wie Ubuntu. Zum größten Teil ist APT für die Installation, Deinstallation und Aktualisierung von Paketen einfach zu verwenden. In seltenen Fällen, wenn Sie Abhängigkeiten von Drittanbietern einbinden, apt-get kann es vorkommen, dass Ihnen eine Fehlermeldung angezeigt wird, dass eine Paketinstallation nicht abgeschlossen werden konnte.

Lösungen:

Es ist immer eine gute Idee, Konfigurationsdateien wie /etc/apt/sources.list diese zu sichern, damit Sie die Änderungen bei Bedarf rückgängig machen können.

  • Wenn das error so aussieht:

    <some-package>: Depends: <other-package> (= version) but this-version is to be installed

    Stellen Sie dann sicher, dass die Repositorys restricted und universe aktiviert sind. Drücken Sie Alt+ F2, geben Sie ein software-properties-gtk und drücken Sie Enter.

    Unter Ubuntu Software Registerkarte aktivieren Sie alle Repositories.




  • Eine mögliche Ursache für nicht erfüllte Abhängigkeiten könnte eine beschädigte Paketdatenbank sein und / oder einige Pakete wurden nicht ordnungsgemäß installiert. Um dieses Problem zu beheben, drücken Sie Alt+ Ctrl+ T, um das Terminal zu öffnen, und versuchen Sie, einen der folgenden Befehle auszuführen:

    sudo apt-sauber werden

    oder,

    sudo apt-get autoclean

    apt-get clean Löscht das lokale Repository der abgerufenen Paketdateien (die .deb-Dateien). Es entfernt alles außer der Sperrdatei aus / var / cache / apt / archives / und / var / cache / apt / archives / partial /. apt-get autoclean Löscht das lokale Repository von abgerufenen Paketdateien, entfernt jedoch im Gegensatz apt-get clean dazu nur Paketdateien, die nicht mehr heruntergeladen werden können und größtenteils unbrauchbar sind.

  • Eine der grundlegendsten Korrekturen zur Behebung von Abhängigkeitsproblemen besteht darin, Folgendes auszuführen:

    sudo apt-get -f installieren

    Das -f hier steht für "fix broken". Apt wird versuchen, defekte Abhängigkeiten zu korrigieren. Wenn Sie ein Paket mit nicht erfüllten Abhängigkeiten manuell installiert haben, apt-get werden diese Abhängigkeiten nach Möglichkeit installiert. Andernfalls wird möglicherweise einfach das installierte Paket entfernt, um das Problem zu beheben.

    Dann renne:

    sudo dpkg --configure -a

    Führen Sie dies dann erneut aus:

    sudo apt-get -f installieren

    Wenn die Ausgabe ist:

    0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.

    Das heißt, es ist gescheitert.

  • Die nächste Lösung lautet:

    sudo apt-get -u dist-upgrade

    Wenn angehaltene Pakete angezeigt werden, sollten Sie diese entfernen. Pakete werden aufgrund von Abhängigkeitskonflikten zurückgehalten, apt die nicht aufgelöst werden können. Versuchen Sie diesen Befehl, um die Konflikte zu finden und zu reparieren:

    sudo apt-get -o Debug :: pkgProblemResolver = yes dist-upgrade

    Wenn es die Konflikte nicht beheben kann, wird es beendet mit:

    0 upgraded, 0 newly installed, 0 to remove and 6 not upgraded.

    Löschen Sie die angehaltenen Pakete nacheinander dist-upgrade , bis keine angehaltenen Pakete mehr vorhanden sind. Installieren Sie dann alle benötigten Pakete neu. Stellen Sie sicher --dry-run , dass Sie die Option verwenden, damit Sie umfassend über die Konsequenzen informiert sind:

    sudo apt-get remove - dry-run Paketname

    Da das Entfernen des Pakets, das Sie installieren möchten, möglicherweise nicht ideal ist, können Sie auch versuchen, ein Repository mit den Paketen zu finden, die Sie zur Erfüllung der Abhängigkeiten benötigen.

Wenn alles andere fehlschlägt, können Sie versuchen, die Abhängigkeiten selbst zu erfüllen, indem Sie entweder die erforderlichen Pakete suchen und installieren oder sie aus dem Quellcode installieren und dann deb- Pakete für sie erstellen .

Deaktivieren / Entfernen / Löschen von PPAs:

PPAs (Personal Package Archive) sind auf Launchpad gehostete Repositorys . Sie können PPAs verwenden, um Pakete zu installieren oder zu aktualisieren, die nicht in den offiziellen Ubuntu-Repositories verfügbar sind.

Eine der häufigsten Ursachen für nicht erfüllte Abhängigkeiten sind PPAs, insbesondere beim Upgrade des vorhandenen Pakets in Ubuntu-Repositorys. Um das Problem zu lösen, haben Sie drei Möglichkeiten: Deaktivieren, Löschen (Zurücksetzen auf das ursprüngliche Paket in Ubuntu-Repositorys) oder Entfernen von PPA.

  • Deaktivieren:

    Das Deaktivieren einer PPA bedeutet, dass für die von dieser PPA installierten Pakete keine Updates mehr durchgeführt werden. So deaktivieren Sie eine PPA: Öffnen Sie Software Center > Edit > Software Sources oder,

    Drücke Alt+ F2und renne software-properties-gtk .

    Wenn Sie auf die Other Software Registerkarte klicken , sehen Sie, dass jede PPA hier zwei Zeilen enthält, eine für die kompilierten Pakete und eine für die Quelle. Uncheck Beide Zeilen deaktivieren eine PPA. Hier können Sie auch PPAs hinzufügen und entfernen.




  • Reinigen:

    Eine PPA bereinigen bedeutet, dass die Pakete in der ausgewählten PPA auf die Version in den offiziellen Ubuntu-Repositories heruntergestuft und diese PPA deaktiviert werden. PPA Purge macht genau das. Führen Sie den folgenden Befehl aus, um PPA Purge zu installieren:

    sudo apt-get install ppa-purge

Wenn man bedenkt, dass die Frage nicht apt funktioniert, schlägt der obige Befehl fehl. Also benutze diesen Befehl

 mkdir ppa-purge && cd ppa-purge && wget http://mirror.pnl.gov/ubuntu/pool/universe/p/ppa-purge/ppa-purge_0.2.8+bzr56_all.deb && wget http://mirror.pnl.gov/ubuntu//pool/main/a/aptitude/aptitude_0.6.6-1ubuntu1_i386.deb && sudo dpkg -i ./*.deb
 

So verwenden Sie PPA Purge:

sudo ppa-purge ppa: someppa / ppa

Wenn der Befehl 'ppa-purge' aus irgendeinem Grund fehlschlägt, können Sie 'ppa-purge' erst dann erneut ausführen, wenn Sie die PPA erneut aktivieren (Um die PPA zu aktivieren, gehen Sie genauso vor wie beim Deaktivieren einer PPA und Check der beiden Zeilen einer bestimmten PPA, um es zu aktivieren).

Hinweis: PPA Purge Entfernt keine PPAs ( möglicherweise in Zukunft ). Sie müssen die PPAs daher manuell entfernen.

  • Entfernen:

    Wenn das von einem PPA installierte Paket in offiziellen Ubuntu-Repositories nicht vorhanden PPA Purge ist , wird die Verwendung nicht empfohlen, da es nichts gibt, was heruntergestuft werden könnte, und PPA Purge es auch nicht löschen würde. Führen Sie die folgenden Befehle aus, um einen PPA und installierte Pakete zu entfernen: (Ignorieren Sie den ersten Befehl, wenn Sie die installierten Pakete nicht entfernen möchten.)

    sudo apt-get autoremove --purge Paketname
    sudo add-apt-repository - ppa entfernen: someppa / ppa
    sudo apt-get autoclean
    

Alternativ können Sie Y PPA Manager PPAs deaktivieren / entfernen / entfernen (Details am Ende der Antwort).

Vorsichtsmaßnahmen:

Wie können wir also verhindern, dass dies überhaupt geschieht?

  • Halten Sie Ubuntu auf dem Laufenden. Ubuntu benachrichtigt automatisch, wenn Updates verfügbar sind. Sie können auch nach verfügbaren Updates suchen, indem Sie Session Indicator im Unity-Bedienfeld auf klicken :




    Oder drücken Sie Alt+ Ctrl+ T, um das Terminal zu öffnen und die folgenden Befehle auszuführen:

    sudo apt-get update
    sudo apt-get upgrade

    Update: Synchronisiert Ihre Liste der verfügbaren Pakete mit den Servern in den Quellrepositorys. Upgrade: Lädt neuere Versionen Ihrer installierten Pakete herunter und installiert sie.

  • Wenn Sie andere Repositorys zu sources.list hinzufügen möchten, stellen Sie sicher, dass das Repository mit Ubuntu kompatibel ist (und bekanntermaßen funktioniert). Repositorys, die nicht für Ihre Ubuntu-Version entwickelt wurden, können zu Inkonsistenzen in Ihrem System führen und Sie möglicherweise zu einer Neuinstallation zwingen. Stellen Sie außerdem sicher, dass Sie wirklich externe Repositorys hinzufügen müssen, da die gesuchten Softwarepakete möglicherweise bereits in den offiziellen Repositorys enthalten sind! Quelle
  • Entfernen Sie doppelte PPAs. Y PPA Manager (Installationsanleitung am Ende der Antwort) kann doppelte PPAs leicht scannen und entfernen.

    • Drücken Sie Alt+ F2und führen Sie y-ppa-manager Y PPA Manager aus.
    • Einmal geöffnet, doppelklicken oder klicken Sie Enterauf Advanced .
    • Wählen Scan and remove duplicate PPAs Sie im daraufhin angezeigten Fenster und klicken Sie auf OK.


Bildbeschreibung hier eingeben

Hilfe bekommen:

Wenn Sie in Askubuntu oder einem anderen Hilfeforum um Hilfe bitten , sollten Sie die Ausgabe der folgenden Befehle in Ihre Frage einbeziehen :

  • Ausgabe des aktuellen Fehlers:

    sudo apt-get install Paketname
  • Daraufhin wird Ihre sources.list angezeigt:

    cat /etc/apt/sources.list
  • Dies zeigt die Liste der PPAs (falls vorhanden):

    cat /etc/apt/sources.list.d/*

Zusätzliche Quellen:


Y PPA Manager : Y PPA Manager ist ein One-Stop-Shop für alle Ihre PPA-Anforderungen.


y ppa manager

Hier sind einige seiner Funktionen:

  • Pakete in allen Launchpad-PPAs suchen
  • Auflisten und Herunterladen von Paketen in einem PPA
  • PPA hinzufügen / entfernen / löschen
  • Sichern und Wiederherstellen von PPA-Quellen
  • Entfernen Sie doppelte PPA-Quellen

Um zu installieren Y PPA Manager , öffne das Terminal indem du Alt+ Ctrl+ drückst Tund führe die folgenden Befehle aus:

sudo add-apt-repository ppa: webupd8team / y-ppa-manager
sudo apt-get update
sudo apt-get installiert den y-ppa-manager

In Anbetracht der Frage, apt ist kaputt, verwenden Sie stattdessen diese Befehle

 sudo su
 

und

32 Bit:

 mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_i386.deb && dpkg -i ./*.deb
 

64 Bit:

 mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_amd64.deb && dpkg -i ./*.deb
 

569


2012-05-27

Hinweis: Alle Befehle, die ausgeführt werden sollen, müssen im Terminal ausgeführt werden. Dies kann entweder durch Ctrl+ Alt+ Toder durch Suchen nach dem Terminal im Bindestrich geöffnet werden .

Ist es wirklich kaputt?

Führen Sie den folgenden Befehl aus und versuchen Sie, die Software, die Sie installieren wollten, erneut zu installieren

 sudo apt-get update
 

Pre-Performance-Schritte

Sichern

Sichern Sie die folgenden Dateien:

  • /etc/apt/sources.list
  • /var/lib/dpkg/status

Verwenden Sie dazu diese Befehle

 sudo cp /etc/apt/sources.list /etc/apt/sources.list.original
 

und

 sudo cp /var/lib/dpkg/status /var/lib/dpkg/status.original
 

Leeren Sie Ihren Apt-Cache

apt Bewahrt einen Cache mit kürzlich heruntergeladenen Paketen auf, um Bandbreite zu sparen, wenn diese installiert werden müssen. Dies kann in einigen Fällen kontraproduktiv sein

Zum Reinigen haben Sie zwei Möglichkeiten

 sudo apt-get clean 
 

Dadurch werden alle zwischengespeicherten Pakete entfernt, die zum Ordner gehören, /var/cache/apt/archives/ mit /var/cache/apt/archives/partial Ausnahme der .lock-Dateien. Dies wird empfohlen

 sudo apt-get autoclean
 

Dieser scannt die Ordner /var/cache/apt/archives/ und /var/cache/apt/archives/partial und prüft , ob das Paket noch in den Repositories und entfernt diejenigen , die nicht sind


Abhängigkeiten beheben

Verwenden des Fix-Break-Modus von apt

 sudo apt-get -f install
 

Dies führt dazu, dass apt nach fehlenden Abhängigkeiten sucht und diese aus den Repositorys behebt

Wenn in der Ausgabe angegeben wird, dass nichts Neues installiert oder aktualisiert wurde, ist ein Fehler aufgetreten.


Überprüfen Sie, ob alle erforderlichen Quellen aktiviert sind

Geben gksu software-properties-gtk Sie ein und Sie erhalten dieses Fenster




Stellen Sie sicher, dass alle Quellen aktiviert sind.

Gehen Sie als nächstes zur Registerkarte Andere Software und überprüfen Sie, ob die erforderlichen PPAs für die zu installierende Software vorhanden und aktiviert sind. Deaktivieren Sie auch einige PPAs, bei denen möglicherweise Pakete beschädigt sind




jetzt renn sudo apt-get update

Versuchen Sie jetzt, die Software zu installieren

Auswählen eines besseren Servers zum Herunterladen

Geben gksu software-properties-gtk Sie ein und Sie erhalten dieses Fenster




Klicken Sie im Dropdown-Feld auf Download und wählen Sie eine andere aus




Klicken Sie auf Select Best Server




Lauf sudo apt-get update

Versuchen Sie, die Software zu installieren

Versuchen Sie es auch mit sudo apt-get install -f


PPA Purge

Dies ist ein Tool, das verwendet wird, um defekte / unerwünschte PPAs und deren Anwendungen zu entfernen

Um es zu installieren, führen Sie es aus

 sudo apt-get install ppa-purge
 

Wenn man bedenkt, dass die Frage nicht apt funktioniert, schlägt der obige Befehl fehl. Also benutze diesen Befehl

 mkdir ppa-purge && cd ppa-purge && wget http://mirror.pnl.gov/ubuntu/pool/universe/p/ppa-purge/ppa-purge_0.2.8+bzr56_all.deb && wget http://mirror.pnl.gov/ubuntu//pool/main/a/aptitude/aptitude_0.6.6-1ubuntu1_i386.deb && sudo dpkg -i ./*.deb
 

Verwenden Sie jetzt ppa purge

 sudo ppa-purge ppa:someppa/ppa  
 

Y-PPA Manager

Y-PPA Manager ist eine GUI-App, mit der Sie PPAs und verschiedene damit verbundene Probleme verwalten können

Um es zu installieren

 sudo add-apt-repository ppa:webupd8team/y-ppa-manager
 

und

 sudo apt-get update
 

und

 sudo apt-get install y-ppa-manager
 

In Anbetracht der Frage, apt die nicht funktioniert, verwenden Sie stattdessen diesen Befehl

 sudo su
 

und

32 Bit:

 mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_i386.deb && dpkg -i ./*.deb
 

64 Bit:

 mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_amd64.deb && dpkg -i ./*.deb
 

Geben Sie jetzt ein y-ppa-manager

Ihnen wird dieses Fenster angezeigt




Doppelklicken Sie auf Erweitert, und Sie erhalten dieses Fenster




Führen Sie die folgenden schwarz umrissenen Aufgaben aus





Vorbeugung ist besser als Heilung

Es ist besser zu verhindern, als auf AskUbuntu nach dieser Frage zu suchen: D

Hier sind die Richtlinien, um Sie zu schützen

Halten Sie Ihr System auf dem neuesten Stand

Führen Sie den folgenden Befehl immer regelmäßig aus

 sudo apt-get update&&sudo apt-get upgrade
 

Mit diesem Befehl können Sie auch immer den Update Manager verwenden

 gksu update-manager
 

Verwenden Sie nur vertrauenswürdige PPAs

Verwenden Sie nur PPAs, die auch unter Ubuntu verwendet werden sollen. Verwenden Sie nur PPAs mit vertrauenswürdigen Quellen. Tatsächlich befindet sich das Paket möglicherweise bereits in den Ubuntu-Repositorys

Sichern, wenn die Dinge gut sind und später wiederherstellen

Hierzu benötigen Sie den Y-PPA-Manager. Die Installationsschritte sind oben angegeben.

Führen Sie diesen Befehl aus, um Y-PPA-Manager zu öffnen

 y-ppa-manager
 

Ihnen wird dieses Fenster angezeigt




Doppelklicken Sie auf Erweitert, und Sie erhalten dieses Fenster




Führen Sie Folgendes aus:




Sie werden aufgefordert, eine tar.gz-Datei mit einem Dialogfeld zu speichern, das dem folgenden ähnelt. Speichern Sie es in einer anderen Partition oder an einem sicheren Ort




Wenn Sie es später erneut wiederherstellen müssen, befolgen Sie ähnliche Schritte. Wenn Sie zum erweiterten Dialogfeld gelangen, klicken Sie auf Folgendes:




Sie werden aufgefordert, die zuvor gespeicherte Sicherung mit einem ähnlichen Dialogfeld wie dem folgenden wiederherzustellen





Funktioniert immer noch nicht?

Paketabhängigkeitsfehler sind nicht immer allgemein und hängen vom zu installierenden Paket ab.

Wenn das Befolgen aller Schritte zur Behebung des Fehlers bei Ihnen nicht funktioniert, können Sie immer auf Ask Ubuntu nachfragenhttp://askubuntu.com

Hier sind einige Befehle, deren Ausgabe Sie veröffentlichen müssen

 sudo apt-get install packagename
 

und

 cat /etc/apt/sources.list
 

und

 cat /etc/apt/sources.list.d/*
 

(Danke an Basharat Sial )

Es gibt auch andere Dateien / Befehle, deren Ausgabe möglicherweise fehlerspezifisch ist, und Benutzer werden Sie wahrscheinlich in den Kommentaren auffordern, die Datei / den Befehl zu veröffentlichen.


88


2012-05-21

Bisher konzentrieren sich diese Antworten auf die automatische Behebung eines solchen Problems, hauptsächlich in der Hoffnung, dass es sich selbst behebt, aber nicht auf das Verständnis, wie man Abhängigkeiten untersucht. Es ist wichtig, Dinge zu versuchen, wie sicherzustellen, dass Ihre Paketlisten auf dem neuesten Stand sind, denn Sie müssen sicherstellen, dass ein einfaches Update oder Löschen des Caches das Problem nicht löst, bevor Sie tiefer gehen. Wenn jedoch alles hinter den Kulissen funktioniert, wie es sollte, ist es von größter Bedeutung, zu lernen, wie man Abhängigkeiten versteht. Manchmal scheinen die Ebenen der Abhängigkeiten überwältigend zu sein, aber das Konzept ist einfach und der Schlüssel zum Verständnis, wie Software in einem Ubuntu-System installiert / deinstalliert wird.

Ich kann Aptitude jedem empfehlen , der ein .deb-basiertes System wie Ubuntu verwendet. Die Baumstruktur ermöglicht es Ihnen, Abhängigkeiten einschließlich empfohlener und vorgeschlagener Pakete auf einfache Weise zu durchsuchen sowie Konflikte und nicht erfüllte Abhängigkeiten zu visualisieren. Es ist ein unschätzbares Werkzeug, wenn apt-get keine einfache Lösung bietet und um Abhängigkeiten im Allgemeinen zu visualisieren. ( Synaptic ist auch in Ubuntu verfügbar, aber ich finde es nicht so intuitiv.)

Aptitude bietet auch einen Konfliktlöser, der Sie durch alle möglichen Kombinationen von installierten / entfernten / aktualisierten / etc-Paketen führt, um alle Anforderungen ohne Konflikte oder Probleme zu erfüllen. Dies kann auch dann erfolgreich sein, wenn apt keine Lösung finden kann. Als Ubuntu-Benutzer treten normalerweise keine Situationen auf, in denen Sie untersuchen müssen, warum dieses bestimmte Paket installiert wird, aber es ist fast unvermeidlich, wenn Sie das System häufiger verwenden.


38


2012-05-30

package1: Hängt ab von: package2 (> = 1.8), aber 1.7.5-1ubuntu1 muss installiert werden

Erklärung der Nachricht:

  1. Damit Ihre Installation abgeschlossen ist, benötigt package1 package2.
  2. package2 muss in der Version> = 1.8 verfügbar sein
  3. Der Paketmanager hat alle Repositorys überprüft und nur die Version 1.7.5-1ubuntu1 gefunden, die installiert werden konnte. Dies ist jedoch nicht möglich, da die Version <1.8 ist

Fix

Für diese Frage gibt es KEINE einzige richtige Antwort, und es gibt KEINE einfache Antwort.

Es gibt viele Szenarien, in denen dies passieren kann, und man muss alle Optionen untersuchen und versuchen, die Voraussetzungen zu lösen, die zu diesem Fehler führen.

Szenario A:

Auf alle Repositorys, auf die Sie Zugriff haben, ist package2 in Version> = 1.8 nicht vorhanden, daher müssen Sie ein Repository finden, das dies tut. Wenn Sie kein Repository mit Versionen> = 1.8 finden, müssen Sie möglicherweise package2 aus dem Quellcode erstellen und installieren. Versuchen Sie dann, package1 zu installieren.

Wenn Sie wissen möchten, wie ein Paket aus dem Quellcode erstellt wird, überprüfen Sie andere Fragen / Antworten oder veröffentlichen Sie eine neue.

Szenario B:

In den Repositorys ist package2 in einer Version> = 1.8 enthalten, der Paketmanager möchte jedoch weiterhin eine ältere Version (1.7.5) installieren.

Der Grund dafür kann sein, dass die späteren Versionen von package2 von einer neueren Technologie erstellt wurden, die von anderen bereits installierten Paketen nicht unterstützt wird.

Dies kann möglicherweise gar nicht behoben werden. Sie können versuchen, apt oder synaptic zu verwenden und nach allen Versionen des Pakets2 zu suchen, die in den Repositorys verfügbar sind, und versuchen, eine bestimmte Version> = 1.8 zu installieren

Wenn Sie andere inkompatible Pakete haben und dies tun, erhalten Sie eine Liste ähnlicher Fehlermeldungen für alle anderen Pakete, die die Installation von package2> = 1.8 verhindern.

In diesem Fall haben Sie ein größeres Problem. Sie wollten package1 installieren, für das package2> = 1.8 sein muss, für package2 in Version> = 1.8 muss package3 jedoch> = 6.7 sein, und Sie haben package3, Version 6.3

Die Sache ist, dass der Paketmanager (APT) versucht, alle diese Abhängigkeiten automatisch zu lösen, wenn es möglich ist. Wenn es heißt, dass es nicht möglich ist (und eine Nachricht wie in der Frage ausgibt), sollten Sie ihr vertrauen.

Wenn Sie dem Paketmanager nicht vertrauen und sicher sind, dass Sie keine Probleme haben, können Sie versuchen, die Installation der jeweils benötigten Versionen aller Pakete nacheinander zu erzwingen, und hoffen, dass alles in Ordnung ist.

Beachten Sie, dass dies bei Systempaketen schwerwiegende Probleme verursachen kann. Sie können sich aus dem System ausschließen, wichtige Dienste blockieren usw.

Szenario C:

Unabhängig von den Gründen für das Problem können Sie jederzeit die manuelle Kompilierung einrichten und das benötigte Paket und alle Abhängigkeiten in den genau benötigten Versionen aus dem Quellcode erstellen. Mit dieser Option können Sie das, was Sie erstellt haben, in einem separaten Verzeichnis und außerhalb des Systempfads aufbewahren, damit keine Konflikte mit dem System entstehen. Dies ist wahrscheinlich die sauberste Lösung und kann manchmal schneller erledigt werden.

Szenario D:

Der Paketmanager hat Zugriff auf veraltete Informationen zu Paketen und kann daher keine Lösung finden. Schau in die anderen Antworten.

Szenario E:

Der Paketmanager hat einen Fehler im Code für die Abhängigkeitsauflösung.

Sie müssen untersuchen, ob dies wirklich der Fall ist, und dann eine Fehleranforderung ausgeben.

...

Szenario Z:

Möglicherweise gibt es andere Szenarien.

Zum Beispiel könnten Paketbetreuer falsch gelegen haben und haben nicht überprüft, ob package1 auch mit einer Version von package2 <1.8 funktioniert, und in der Spezifikation haben sie falsche Abhängigkeiten festgelegt.


24


2012-05-30

Diese Methoden müssen befolgt werden, wenn Sie Fehler in Bezug auf nicht erfüllte Abhängigkeiten erhalten

Nachdem Sie die Anweisungen befolgt haben, versuchen Sie, die Software zu installieren. Zumindest eine dieser Methoden sollten für Sie arbeiten

1 . Versuchen Sie dies, bevor Sie einen neuen Befehl ausführen oder einen neuen ppa hinzufügen

Aufräumen des Apt-Cache:

 sudo apt-get clean
 

Aufräumen nicht verwendeter Abhängigkeiten:

 sudo apt-get autoremove
 

Apt-cache wird aktualisiert

 sudo apt-get update
 

Dadurch wird der gesamte Cache entfernt und ein neuer Cache heruntergeladen. Dies sollte erfolgen, um neue Cache-Pakete und neuere Updates zu erhalten.

2 . Versuchen Sie es sudo apt-get install -f .

Es wird wahrscheinlich einige Vorschläge zum Entfernen und Installieren von Paketen geben, was vernünftig erscheint.

3 . Ändern Sie das Download Server von, Software Sources da manchmal die Dateien auf einem Server beschädigt sind.


Bildbeschreibung hier eingeben



Bildbeschreibung hier eingeben



Bildbeschreibung hier eingeben

4 . Dies passiert auch, wenn Sie zuvor ein externes ppa für die unterbrochene Abhängigkeit hinzugefügt haben. Versuchen Sie, dieses ppa durch zu entfernen

  • Geben Sie entweder sudo add-apt-repository --remove ppa:someppa/ppa die von ppa installierten Dateien / Bibliotheken ein und entfernen Sie sie manuell

oder

  • ppa löschen (dadurch werden auch die installierten Dateien gelöscht)

     sudo apt-get install ppa-purge   #a one time install 
    sudo ppa-purge ppa:someppa/ppa  
     

5 . Wenn dies nicht der Fall ist, versuchen Sie mindestens, das Paket zu entfernen, das als fehlerhafte Abhängigkeit angezeigt wird. Versuchen Sie dann erneut, die Installation durchzuführen.

6 . Fügen Sie immer die stabile Version eines Repository / PPA hinzu.


Bildbeschreibung hier eingeben

7 Stellen Sie außerdem sicher, dass alle offiziellen Repositorys aktiviert sind (In Software Sources ).


Bildbeschreibung hier eingeben

Bitte aktivieren Sie die nicht, Proposed Updates da sie für Tests / Entwickler gedacht sind.


Bildbeschreibung hier eingeben


Wie Doug sagte:

Normalerweise besteht der beste erste Schritt zur Lösung darin, die Quelle von <pkg1> & zu identifizieren <pkg2> .

Außerdem wird nicht erwähnt, dass in vielen, wenn nicht in den meisten Fällen, "<Was auch immer> installiert werden soll" wirklich "<Was auch immer> installiert ist" bedeutet und versucht werden sollte, entfernt zu werden, wenn nichts anderes funktioniert (wie in Punkt 5).


Ich werde weitere Dinge hinzufügen, die ich nicht finden kann unmet dependencies .


17


2012-05-21

In den meisten Fällen werden durch die Installation des Pakets aptitude nicht erfüllte Abhängigkeiten behoben. Das Standardpaket aptitude wurde nicht auf Ihrem PC installiert.

 sudo apt-get update
sudo apt-get install aptitude
 

dann,

 sudo aptitude install packagename
 

Beispielsweise,

    
avinash @ avinash-Lenovo-IdeaPad-Z500: ~ $ sudo apt-get install ubuntu-sdk
Paketlisten lesen ... Fertig
Abhängigkeitsbaum erstellen       
Statusinformationen werden gelesen ... Fertig
Einige Pakete konnten nicht installiert werden. Dies kann bedeuten, dass Sie haben
angefordert eine unmögliche Situation oder wenn Sie die instabile verwenden
Verteilung, dass einige erforderliche Pakete noch nicht erstellt wurden
oder wurde aus dem Incoming verschoben.
Die folgenden Informationen können zur Behebung der Situation beitragen:

Die folgenden Pakete haben nicht erfüllte Abhängigkeiten:
 ubuntu-sdk: Abhängig von: qtcreator-plugin-ubuntu, wird aber nicht installiert
E: Sie können Probleme nicht beheben, da Sie defekte Pakete haben.

Installieren Sie das Paket durch aptitude

avinash @ avinash-Lenovo-IdeaPad-Z500: ~ $ sudo aptitude ubuntu-sdk installieren
Die folgenden NEUEN Pakete werden installiert:
  apparmor-easyprof {a} apparmor-easyprof-ubuntu {a} bei {a} Build-Essential {a} 
  Klicken Sie auf {a} click-apparmor {a} click-dev {a} click-doc {a} cordova-ubuntu-2.8 
  cordova-ubuntu-2.8-examples {a} debhelper {a} devscripts {a} dh-apparmor {a} 
  dh-make {a} distro-info-data {a} dpkg-dev {a} dput {a} g ++ {a} g ++ - 4.8 {a} 
  geoclue-gypsy {a} libalgorithmus-diff-perl {a} libalgorithmus-diff-xs-perl {a} 
  libalgorithm-merge-perl {a} libboost-filesystem1.53.0 {a} 
  libboost-program-options1.53.0 {a} libboost-regex1.53.0 {a} 
  libbotan-1.10-0 {a} libdee-qt5-3 {a} libdistro-info-perl {a} 
  libexporter-lite-perl {a} libglib2.0-dev {a} 
  libgstreamer-plugins-base1.0-dev {a} libgstreamer1.0-dev {a} libgypsy0 {a} 
  libhud2 {a} libio-stringy-perl {a} libjs-jquery {a} libjs-sphinxdoc {a} 
  libjs-unterstrich {a} liblockdev1 {a} libmail-sendmail-perl {a} 
  libparse-debcontrol-perl {a} libpcre3-dev {a} libpcrecpp0 {a} 
  libpoppler-qt5-1 {a} libqdjango-db0 {a} libqgsttools-p1 {a} 
  libqt5clucene5 {a} libqt5contacts5 {a} libqt5declarative5 {a} 
  libqt5designer5 {a} libqt5designercomponents5 {a} libqt5feedback5 {a} 
  libqt5help5 {a} libqt5location5-plugins {a} libqt5multimedia5 {a} 
  libqt5multimedia5-Plugins libqt5multimediaquick-p5 {a} 
  libqt5multimediawidgets5 {a} libqt5organizer5 {a} 
  libqt5qml-graphicaleffects {a} libqt5script5 libqt5scripttools5 {a} 
  libqt5svg5 {a} libqt5svg5-dev libqt5systeminfo5 {a} libqt5v8-5-dev 
  libqt5versit5 {a} libqt5versitorganizer5 {a} libqt5webkit5-dev 
  libqt5webkit5-qmlwebkitplugin {a} libqt5xmlpatterns5 {a} 
  libqt5xmlpatterns5-dev libstdc ++ - 4.8-dev {a} libsys-hostname-long-perl {a} 
  libthumbnailer0 {a} libu1db-qt5-3 {a} libunity-action-qt1 {a} 
  libupstart-app-launch1 {a} libusermetricsinput1 {a} libxml2-dev {a} 
  libxslt1-dev {a} po-debconf {a} python3-apparmor-click {a} python3-click {a} 
  python3-magic {a} qmlscene qt3d5-dev qtbase5-doc {a} qtcreator {a} 
  qtcreator-doc {a} qtcreator-plugin-ubuntu {a} 
  qtcreator-plugin-ubuntu-common {a} qtdeclarative5-accounts-plugin 
  qtdeclarative5-cordova-2.8-plugin {a} qtdeclarative5-dev-tools 
  qtdeclarative5-doc-html {a} qtdeclarative5-folderlistmodel-plugin 
  qtdeclarative5-friends0.2 qtdeclarative5-localstorage-plugin 
  qtdeclarative5-particle-plugin qtdeclarative5-poppler1.0 
  qtdeclarative5-qtaudioengine-plugin qtdeclarative5-qtfeedback-plugin {a} 
  qtdeclarative5-qtlocation-plugin qtdeclarative5-qtmultimedia-plugin {a} 
  qtdeclarative5-qtorganizer-plugin qtdeclarative5-qtquick2-plugin {a} 
  qtdeclarative5-qtsensors-plugin qtdeclarative5-u1db1.0 
  qtdeclarative5-ubuntu-ui-extras-browser-plugin {a} 
  qtdeclarative5-ubuntu-ui-extras-browser-plugin-assets {a} 
  qtdeclarative5-ubuntu-ui-toolkit-plugin {a} 
  qtdeclarative5-unity-action-plugin {a} qtdeclarative5-usermetrics0.1 
  qtdeclarative5-window-plugin {ein} qtdeclarative5-xmllistmodel-plugin 
  qtgraphicaleffects5-doc {a} qtlocation5-dev {a} qtmultimedia5-dev 
  qtmultimedia5-doc {a} qtmultimedia5-doc-html {a} qtscript5-dev 
  qtscript5-doc {a} qtscript5-doc-html {a} qtsensors5-dev {a} qtsvg5-doc {a} 
  qtsvg5-doc-html {a} qttools5-dev qttools5-dev-tools qttools5-doc {a} 
  qtwebkit5-doc-html {a} Wurzel {a} Wurzelgemeinschaft {a} sqlite3 {a} 
  ubuntu-html5-container ubuntu-html5-sdk {ab} ubuntu-html5-theme {a} 
  ubuntu-html5-theme-examples ubuntu-sdk ubuntu-sdk-libs 
  ubuntu-sdk-libs-dev {a} ubuntu-ui-toolkit-doc {a} 
  Ubuntu-UI-Toolkit-Beispiele {a} Ubuntu-UI-Toolkit-Thema {a} 
  unity-action-doc {a} Startup-App-Start {a} Startup-App-Start-Tools {a} 
  Usermetricsservice {a} wdiff {a} zlib1g-dev {a} 
Die folgenden Pakete werden aktualisiert:
  cpp-4.8 gcc-4.8 gcc-4.8-Base hud libasan0 libatomic1 libgcc-4.8-dev 
  libgcc1 libglib2.0-0 libglib2.0-bin libgomp1 libitm1 libquadmath0 
  libstdc ++ 6 libtsan0 
15 Pakete aktualisiert, 151 neu installiert, 0 zu entfernen und 293 nicht aktualisiert.
Benötigt 108 MB / 126 MB Archive. Nach dem Auspacken werden 273 MB verwendet.
Die folgenden Pakete haben nicht erfüllte Abhängigkeiten:
 ubuntu-html5-sdk: Abhängig von: qtdeclarative5-ubuntu-webapps-api, das ein virtuelles Paket ist.
                    Hängt ab von: ubuntu-html5-ui-toolkit, wird aber nicht installiert.
Die folgenden Aktionen lösen diese Abhängigkeiten auf:

     Behalten Sie die folgenden Pakete in der aktuellen Version bei:              
1) qtcreator-plugin-ubuntu [Nicht installiert]                          
2) ubuntu-html5-sdk [Nicht installiert]                                 
3) ubuntu-sdk [Nicht installiert]                                       

     Lassen Sie die folgenden Abhängigkeiten ungelöst:                       
4) libhud-client2 empfiehlt hud (= 13.10.1 + 13.10.20131014-0ubuntu1)
5) qtcreator-plugin-ubuntu-common empfiehlt qtcreator-plugin-ubuntu


Akzeptiere diese Lösung? [Y / n / q /?] Y
Die folgenden NEUEN Pakete werden installiert:
  AppArmor-EasyProf {a} AppArmor-EasyProf-Ubuntu {a} Build-Essential {a} 
  click {a} click-apparmor {a} cordova-ubuntu-2.8 debhelper {a} dh-apparmor {a} 
  dh-make {a} dpkg-dev {a} g ++ {a} g ++ - 4.8 {a} geoclue-gypsy {a} 
  libalgorithm-diff-perl {a} 
  libalgorithm-merge-perl {a} libdee-qt5-3 {a} libglib2.0-dev {a} 
  libgstreamer-plugins-base1.0-dev {a} libgstreamer1.0-dev {a} libgypsy0 {a} 
  libhud2 {a} libjs-jquery {a} libmail-sendmail-perl {a} libpcre3-dev {a} 
  libpcrecpp0 {a} libpoppler-qt5-1 {a} libqdjango-db0 {a} libqgsttools-p1 {a} 
  libqt5clucene5 {a} libqt5contacts5 {a} libqt5designer5 {a} 
  libqt5designercomponents5 {a} libqt5feedback5 {a} libqt5help5 {a} 
  libqt5location5-plugins {a} libqt5multimedia5 {a} libqt5multimedia5-plugins 
  libqt5multimediaquick-p5 {a} libqt5multimediawidgets5 {a} 
  libqt5organizer5 {a} libqt5qml-graphicaleffects {a} libqt5script5 
  libqt5scripttools5 {a} libqt5svg5 {a} libqt5svg5-dev libqt5systeminfo5 {a} 
  libqt5v8-5-dev libqt5versit5 {a} libqt5versitorganizer5 {a} 
  libqt5webkit5-dev libqt5webkit5-qmlwebkitplugin {a} libqt5xmlpatterns5 {a} 
  libqt5xmlpatterns5-dev libstdc ++ - 4.8-dev {a} libsys-hostname-long-perl {a} 
  libthumbnailer0 {a} libu1db-qt5-3 {a} libunity-action-qt1 {a} 
  libupstart-app-launch1 {a} libusermetricsinput1 {a} libxml2-dev {a} 
  libxslt1-dev {a} po-debconf {a} python3-apparmor-click {a} python3-click {a} 
  qmlscene qt3d5-dev qtdeclarative5-accounts-plugin 
  qtdeclarative5-cordova-2.8-plugin {a} qtdeclarative5-dev-tools 
  qtdeclarative5-folderlistmodel-plugin qtdeclarative5-friends0.2 
  qtdeclarative5-localstorage-plugin qtdeclarative5-particle-plugin 
  qtdeclarative5-poppler1.0 qtdeclarative5-qtaudioengine-plugin 
  qtdeclarative5-qtfeedback-plugin {a} qtdeclarative5-qtlocation-plugin 
  qtdeclarative5-qtmultimedia-plugin {ein} qtdeclarative5-qtorganizer-plugin 
  qtdeclarative5-qtquick2-plugin {a} qtdeclarative5-qtsensors-plugin 
  qtdeclarative5-u1db1.0 qtdeclarative5-ubuntu-ui-extras-browser-plugin {a} 
  qtdeclarative5-ubuntu-ui-extras-browser-plugin-assets {a} 
  qtdeclarative5-ubuntu-ui-toolkit-plugin {a} 
  qtdeclarative5-unity-action-plugin {a} qtdeclarative5-usermetrics0.1 
  qtdeclarative5-window-plugin {ein} qtdeclarative5-xmllistmodel-plugin 
  qtlocation5-dev {a} qtmultimedia5-dev qtscript5-dev qtsensors5-dev {a} 
  qttools5-dev qttools5-dev-tools sqlite3 {ein} ubuntu-html5-container 
  ubuntu-html5-theme {a} Beispiele für ubuntu-html5-theme ubuntu-sdk-libs 
  Ubuntu-UI-Toolkit-Theme {a} Start der App {a} 
  upstart-app-launch-tools {a} Benutzermessdienst {a} wdiff {a} zlib1g-dev {a} 
Die folgenden Pakete werden aktualisiert:
  cpp-4.8 gcc-4.8 gcc-4.8-Base hud libasan0 libatomic1 libgcc-4.8-dev 
  libgcc1 libglib2.0-0 libglib2.0-bin libgomp1 libitm1 libquadmath0 
  libstdc ++ 6 libtsan0 
15 Pakete aktualisiert, 108 neu installiert, 0 zu entfernen und 293 nicht aktualisiert.
Benötigt 27,1 MB / 45,8 MB an Archiven. Nach dem Auspacken werden 104 MB verwendet.
Möchtest du weiter machen? [J / N /?]

16


2013-12-29

Meine Antwort ist ähnlich wie oben bei Rick.

Mit apt-get clean , apt-get autoclean , apt-get autoremove , apt-get upgrade , apt-get update , apt-get -u dist-upgrade , etc. alle nicht für mich arbeiten.

Ich habe dieses Problem endgültig gelöst, indem ich über in den Abhängigkeitsbaum heruntergestiegen bin (siehe apt-get install unten stehendes Beispiel). In meinem Fall wollte ich installieren libmagickwand-dev :

 apt-get install libmagickwand-dev
 

Ich habe diesen Fehler bekommen:

 The following packages have unmet dependencies:
 libmagickwand-dev : Depends: libmagickcore4-extra (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed
                     Depends: libmagickcore-dev (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed
 

Also bin ich apt-get install für eine der fehlgeschlagenen Abhängigkeiten gelaufen :

 apt-get install libmagickcore-dev

The following packages have unmet dependencies:
 libmagickcore-dev : Depends: libmagickcore4-extra (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed
                     Depends: libgraphviz-dev but it is not going to be installed
 

Ich stieg weiter den Baum hinunter:

 apt-get install libgraphviz-dev
 

mit einem anderen Fehler:

 The following packages have unmet dependencies:
 libgraphviz-dev : Depends: libgvc5 (= 2.26.3-10ubuntu1) but it is not going to be installed
 

Noch einmal tiefer im Baum:

 apt-get install libgvc5
 

Aus irgendeinem Grund war dies erfolgreich und ich konnte das Originalpaket installieren, mit dem ich wollte apt-get install libmagickwand-dev :

 Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  libcdt4 libgd2-xpm libgraph4 libpathplan4
Suggested packages:
  libgd-tools
The following NEW packages will be installed:
  libcdt4 libgd2-xpm libgraph4 libgvc5 libpathplan4
0 upgraded, 5 newly installed, 0 to remove and 2 not upgraded.
Need to get 808 kB of archives.
After this operation, 2,320 kB of additional disk space will be used.
Do you want to continue [Y/n]?
 

11


2012-12-20

Hervorragende Antworten! Aber heute scheint sich mein Fall von Ihrem zu unterscheiden. Hier ist mein Rat.

Problem:

Ich konnte Apache2 in Ubuntu 10.10 nicht installieren.

 [email protected]:~$ sudo apt-get install apache2

Reading 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:

 apache2 : Depends: apache2-mpm-worker (= 2.2.16-1ubuntu3) but it is not going to be installed or

                    apache2-mpm-prefork (= 2.2.16-1ubuntu3) but it is not going to be installed or

                    apache2-mpm-event (= 2.2.16-1ubuntu3) but it is not going to be installed or

                    apache2-mpm-itk (= 2.2.16-1ubuntu3) but it is not going to be installed

           Depends: apache2.2-common (= 2.2.16-1ubuntu3) but it is not going to be installed

E: Broken packages
 

Lösung:

Mein Weg ist, das abhängige Paket in die Installationsliste aufzunehmen.

Wenn "sudo apt-get install apache2" fehlgeschlagen ist, versuchen Sie " sudo apt-get install apache2 apache2.2-common ".

Sehen? apache2.2-common stammt aus dem Fehlerprotokoll des vorherigen Schritts.

Endlich fand ich eine Abhängigkeitskette wie diese:

  apache2.2-common <-- apache2.2-bin <-- libaprutil1-ldap <-- libaprutil1
 

Bei den ersten drei Paketen hat apt-get log gemeldet, dass keine Installation stattfindet.

Für das letzte Paket wird jedoch angezeigt, dass libaprutil1-ldap: Depends: libaprutil1 (= 1.3.9 + dfsg-3build1), aber 1.3.9 + dfsg-3ubuntu0.10.10.1 installiert werden soll.

Ich habe eine andere Version in meiner Bibliothek, also:

 sudo apt-get remove libaprutil1

sudo apt-get install apache2
 

Jetzt ist es ok.


8


2012-11-24

Was sind unerfüllte Abhängigkeiten?

Unter Ubuntu werden Softwarepakete in erster Linie erstellt, bereitgestellt und installiert. Pakete sind ganz einfach eine Alternative zum Herunterladen, Erstellen und Installieren von Software von Grund auf. Sie bieten eine Vielzahl von Vorteilen in Bezug auf Installation, Deinstallation, Überwachung und Handhabung von Interaktionen zwischen Softwareteilen gegenüber dem Standardmodell "Build from Source". Ubuntu verwendet ein zentrales Paketsystem, dh jedes Paket hängt von einigen anderen Paketen ab. Wenn wir ein Paket installieren, werden dessen Abhängigkeiten installiert. Der Fehler "Nicht erfüllte Abhängigkeiten" tritt auf, wenn die Abhängigkeiten des Pakets nicht für die Installation verfügbar sind

Mögliche Ursachen

 1.Computer is not connected to the Internet
2.The repository containing the depandancy package is not enabled
3.Package catalog is not updated
4.The version of the depandancy in the current repository is old
5.Software index is broken
6.The depandancy is not available for ubuntu
 

Versuchen wir es zu lösen

  1. Verbindung zum Internet herstellen: D
  2. Stellen Sie sicher, dass alle Standardrepositorys aktiviert sind

    -> Sie können sie einfach unter Software Center -> Bearbeiten-> Softwarequellen-> Andere Quellen-> Hinzufügen "hinzufügen.

    -> Starten Sie die Software Center .

    ->. Gehen Sie im Panel zu Edit und wählen Sie Software Sources .


    Edit-Software-Quellen

    -> Stellen Sie sicher, dass alle Repositorys überprüft wurden
    Bildbeschreibung hier eingeben

  3. Aktualisieren Sie den Softwarekatalog

    Klicken Sie auf das Symbol oben rechts und wählen Sie im Menü den Eintrag "Update verfügbar"

    Bildbeschreibung hier eingeben

und drücken Sie die Check-Taste
Bildbeschreibung hier eingeben

4.Tippen Sie ctrl+ alt+ t, um das Terminal zu öffnen und tippen Sie sudo apt-get install -f

5.Leeren Sie das kürzlich hinzugefügte ppa mit ppa-purge ppa-purge
Installieren Sie ppa-purge

Dieses Programm deaktiviert eine PPA von Ihren Software-Quellen und setzt Ihr System auf die offiziellen Ubuntu-Pakete zurück. Sie können dies verwenden, um Ihr System nach dem Testen einer neuen Version von einem PPA auf den Normalzustand zurückzusetzen.

Syntax

 sudo ppa-purge ppa:<repository-name>/<subdirectory>
 

Beispiel

 sudo ppa-purge ppa:ubuntu-mozilla-daily/ppa
 
  1. Öffnen Sie das Software-Center und versuchen Sie, eine Software zu installieren. Wenn das folgende Dialogfeld angezeigt wird, klicken Sie auf die Schaltfläche zum Reparieren und warten Sie


Bildbeschreibung hier eingeben

Else Art ctrl+ alt+ töffnen Terminal und geben Sie sudo apt-get install -f und folgen Sie den Anweisungen auf dem Bildschirm

Wenn immer noch ein Fehler auftritt, können Sie ihn in askbuntu nachfragen


7


2012-05-23

... vergessen Sie nicht "build-dep"

Zusätzlich zu den obigen Antworten muss ich zugeben, dass ich überrascht bin, dass niemand diesen Ansatz erwähnt hat, den ich immer als "Wundermittel" verwendet habe, wenn ich auf Konflikte oder ungelöste Pakete gestoßen bin (oder sogar wenn das system hartnäckig ist .... ha!).

BEARBEITET: Verwendung sudo dpkg -r [package] wird empfohlen, da es eine ziemlich leistungsstarke Entfernungsfunktion hat. Da apt-get arbeitet nebenbei mit dpkg , was bedeutet apt-get , dpkg Funktion zu gehorchen .

   sudo dpkg -r [package]
  sudo apt-get build-dep [package]  
  ## pre-install all deps for the package
 

Sie rufen apt-get auf, um das fehlerhafte Paket zu bereinigen, das Sie auf dem System installieren wollten, und rufen dann den Befehl build-dep auf, mit dem apt-get die zu diesem Paket gehörenden Abhängigkeiten abruft und installiert, damit sie erfüllt werden das Paket vor. Rufen Sie dann abschließend die apt-get-Installation auf:

 sudo apt-get install [package]
 

....'Pfui! Lass uns deinen Arm drehen, bis du "Onkel" schreist! '

Dies geschah in meinen langen Jahren der Linux-Nutzung selten, aber ich fand mich mit diesem Ansatz selten und erfolgreich. Dies ist ein Beispiel für den jüngsten Kampf, den ich vor einem Monat mit Paketen hatte mysql-client/mysql-server . Nach einem Dutzend fehlgeschlagener Versuche, mein Root-Passwort mit mysql-server zurückzusetzen (sogar über --skip-grant-tables techqiue, aber dennoch fehlgeschlagen), ist es mir endlich gelungen, den Arm von Linux zu drehen, bis es "Onkel!" Rief:

 sudo dpkg -r mysql-server mysql-client
sudo apt-get autoclean  
## this dumps any copy of existing package to prevent apt-get from "re-using" it.
sudo apt-get build-dep mysql-client   
 ## one package at a time, starting with client first
sudo apt-get install mysql-client
sudo apt-get build-dep mysql-server
sudo apt-get install mysql-server
 

apt-get autoclean ist der Schlüssel in dieser Lösung


5


2015-03-21

Während der Installation von i386-Paketen in 64-Bit-Multiarch-Ubuntu-Systemen

Wenn Sie versuchen, ein Paket zu installieren, das von vielen i386-Paketen abhängt, wird der oben angegebene Abhängigkeitsfehler auch verursacht, wenn Sie die i386-Architektur nicht durch Ausführen des sudo dpkg --add-architecure i386 Befehls hinzufügen .

Beispiel:

 [email protected]:~$ sudo apt-get install skype
Reading 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:
 skype : Depends: skype-bin but it is not installable
E: Unable to correct problems, you have held broken packages.
[email protected]:~$ sudo dpkg --add-architecture i386
[email protected]:~$ sudo apt-get install skype
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  gcc-4.8-base:i386 gcc-4.9-base:i386 libasound2:i386 libasound2-plugins:i386
  libasyncns0:i386 libaudio2:i386 libavahi-client3:i386
  libavahi-common-data:i386 libavahi-common3:i386 libc6:i386
  libcgmanager0:i386 libcomerr2:i386 libcups2:i386 libdbus-1-3:i386
  libdbusmenu-qt2:i386 libdrm-intel1:i386 libdrm-nouveau2:i386
  libdrm-radeon1:i386 libdrm2:i386 libelf1:i386 libexpat1:i386 libffi6:i386
  libflac8:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386
  libgcrypt11:i386 libgl1-mesa-dri:i386 libgl1-mesa-glx:i386
  libglapi-mesa:i386 libglib2.0-0:i386 libgnutls26:i386 libgpg-error0:i386
  libgssapi-krb5-2:i386 libgstreamer-plugins-base1.0-0:i386
  libgstreamer1.0-0:i386 libice6:i386 libjack-jackd2-0:i386 libjbig0:i386
  libjpeg-turbo8:i386 libjpeg8:i386 libjson-c2:i386 libk5crypto3:i386
  libkeyutils1:i386 libkrb5-3:i386 libkrb5support0:i386 libllvm3.4:i386
  liblzma5:i386 libmysqlclient18:i386 libnih-dbus1:i386 libnih1:i386
  libogg0:i386 liborc-0.4-0:i386 libp11-kit0:i386 libpciaccess0:i386
  libpcre3:i386 libpng12-0:i386 libpulse0:i386 libqt4-dbus:i386
  libqt4-declarative:i386 libqt4-network:i386 libqt4-opengl:i386
  libqt4-script:i386 libqt4-sql:i386 libqt4-sql-mysql:i386 libqt4-xml:i386
  libqt4-xmlpatterns:i386 libqtcore4:i386 libqtdbus4:i386 libqtgui4:i386
  libqtwebkit4:i386 libsamplerate0:i386 libselinux1:i386 libsm6:i386
  libsndfile1:i386 libspeexdsp1:i386 libsqlite3-0:i386 libssl1.0.0:i386
  libstdc++6:i386 libtasn1-6:i386 libtiff5:i386 libtinfo5:i386
  libtxc-dxtn-s2tc0:i386 libudev1:i386 libuuid1:i386 libvorbis0a:i386
  libvorbisenc2:i386 libwrap0:i386 libx11-6:i386 libx11-xcb1:i386 libxau6:i386
  libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386 libxcb-present0:i386
  libxcb-sync1:i386 libxcb1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386
  libxfixes3:i386 libxi6:i386 libxml2:i386 libxrender1:i386 libxshmfence1:i386
  libxslt1.1:i386 libxss1:i386 libxt6:i386 libxv1:i386 libxxf86vm1:i386
  mysql-common skype-bin:i386 sni-qt:i386 zlib1g:i386
Suggested packages:
  nas:i386 glibc-doc:i386 locales:i386 rng-tools:i386 libglide3:i386
  gnutls-bin:i386 krb5-doc:i386 krb5-user:i386 libvisual-0.4-plugins:i386
  gstreamer-codec-install:i386 gnome-codec-install:i386
  gstreamer1.0-tools:i386 gstreamer1.0-plugins-base:i386 jackd2:i386
  pulseaudio:i386 libqt4-declarative-folderlistmodel:i386
  libqt4-declarative-gestures:i386 libqt4-declarative-particles:i386
  libqt4-declarative-shaders:i386 qt4-qmlviewer:i386 libqt4-dev:i386
  libicu48:i386 libthai0:i386 qt4-qtconfig:i386
Recommended packages:
  xml-core:i386
The following NEW packages will be installed:
  gcc-4.8-base:i386 gcc-4.9-base:i386 libasound2:i386 libasound2-plugins:i386
  libasyncns0:i386 libaudio2:i386 libavahi-client3:i386
  libavahi-common-data:i386 libavahi-common3:i386 libc6:i386
  libcgmanager0:i386 libcomerr2:i386 libcups2:i386 libdbus-1-3:i386
  libdbusmenu-qt2:i386 libdrm-intel1:i386 libdrm-nouveau2:i386
  libdrm-radeon1:i386 libdrm2:i386 libelf1:i386 libexpat1:i386 libffi6:i386
  libflac8:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386
  libgcrypt11:i386 libgl1-mesa-dri:i386 libgl1-mesa-glx:i386
  libglapi-mesa:i386 libglib2.0-0:i386 libgnutls26:i386 libgpg-error0:i386
  libgssapi-krb5-2:i386 libgstreamer-plugins-base1.0-0:i386
  libgstreamer1.0-0:i386 libice6:i386 libjack-jackd2-0:i386 libjbig0:i386
  libjpeg-turbo8:i386 libjpeg8:i386 libjson-c2:i386 libk5crypto3:i386
  libkeyutils1:i386 libkrb5-3:i386 libkrb5support0:i386 libllvm3.4:i386
  liblzma5:i386 libmysqlclient18:i386 libnih-dbus1:i386 libnih1:i386
  libogg0:i386 liborc-0.4-0:i386 libp11-kit0:i386 libpciaccess0:i386
  libpcre3:i386 libpng12-0:i386 libpulse0:i386 libqt4-dbus:i386
  libqt4-declarative:i386 libqt4-network:i386 libqt4-opengl:i386
  libqt4-script:i386 libqt4-sql:i386 libqt4-sql-mysql:i386 libqt4-xml:i386
  libqt4-xmlpatterns:i386 libqtcore4:i386 libqtdbus4:i386 libqtgui4:i386
  libqtwebkit4:i386 libsamplerate0:i386 libselinux1:i386 libsm6:i386
  libsndfile1:i386 libspeexdsp1:i386 libsqlite3-0:i386 libssl1.0.0:i386
  libstdc++6:i386 libtasn1-6:i386 libtiff5:i386 libtinfo5:i386
  libtxc-dxtn-s2tc0:i386 libudev1:i386 libuuid1:i386 libvorbis0a:i386
  libvorbisenc2:i386 libwrap0:i386 libx11-6:i386 libx11-xcb1:i386 libxau6:i386
  libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386 libxcb-present0:i386
  libxcb-sync1:i386 libxcb1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386
  libxfixes3:i386 libxi6:i386 libxml2:i386 libxrender1:i386 libxshmfence1:i386
  libxslt1.1:i386 libxss1:i386 libxt6:i386 libxv1:i386 libxxf86vm1:i386
  mysql-common skype skype-bin:i386 sni-qt:i386 zlib1g:i386
0 upgraded, 115 newly installed, 0 to remove and 7 not upgraded.
Need to get 63.7 MB of archives.
After this operation, 225 MB of additional disk space will be used.
Do you want to continue? [Y/n] 
 

3


2014-04-21

Nachdem ich beinahe alle Methoden ausprobiert hatte, die in diesem Thread (und in anderen) erwähnt wurden, war ich kurz davor aufzugeben. Ich hatte mein Debian Lenny auf Squeeze upgegradet und konnte mein Leben lang nicht herausfinden, warum PHP5, Apache, MySQL usw. nicht installiert werden wollten. Am Ende habe ich versucht, zu verwenden

 sudo apt-get purge apache2
sudo apt-get purge php5
sudo apt-get purge mysql-server
sudo apt-get clean
sudo apt-get autoremove
sudo apt-get install apache2 php5 mysql-server
 

..und es hat einwandfrei funktioniert! ( Vorsicht, es könnte Ihre Konfigurationsdateien zerstören, sichern Sie sie also! )


1


2013-01-15

Was für mich funktioniert hat, ist die Neuinstallation der Abhängigkeit. In diesem Fall ist die installierte Version aktueller als die neueste (was synaptic anzeigt). Es ist eigentlich gleichbedeutend damit, dass synaptic das Abhängigkeitspaket herunterstufen kann.

Eine andere Sache, die funktioniert hat, ist die Verwendung von "aptitude":

 [email protected]:~# aptitude install libgfortran3
The following NEW packages will be installed:
  libgfortran3{b} 
0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 250 kB of archives. After unpacking 1 230 kB will be used.
The following packages have unmet dependencies:
 libgfortran3 : Depends: gcc-4.8-base (= 4.8.2-19ubuntu1) but 4.8.4-2ubuntu1~14.04 is installed.
Internal error: found 2 (choice -> promotion) mappings for a single choice.
The following actions will resolve these dependencies:

     Keep the following packages at their current version:
1)     libgfortran3 [Not Installed]                       



Accept this solution? [Y/n/q/?] n
Internal error: found 2 (choice -> promotion) mappings for a single choice.
Internal error: found 2 (choice -> promotion) mappings for a single choice.
The following actions will resolve these dependencies:

      Downgrade the following packages:                                        
1)      cpp-4.8 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]       
2)      gcc-4.8 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]       
3)      gcc-4.8-base [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]  
4)      libasan0 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]      
5)      libatomic1 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]    
6)      libgcc-4.8-dev [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]
7)      libgomp1 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]      
8)      libitm1 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]       
9)      libquadmath0 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]  
10)     libstdc++6 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]    
11)     libtsan0 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]      

Accept this solution? [Y/n/q/?] y
 

1


2015-04-19

Wenn Sie einen Fehler wie diesen erhalten:

Bildbeschreibung hier eingeben

Dies sagt Ihnen, dass die Pakete bereits installiert sind, aber nicht alle anderen Pakete installiert wurden, die für die Arbeit benötigt werden. Sie sollten in der Lage sein, dies zu lösen, indem Sie Folgendes ausführen:

 sudo apt-get -f install
 

(Dieser Befehl sollte die nicht erfüllten Abhängigkeiten automatisch installieren.)

oder so ähnlich (mit den entsprechenden Paketen) :

 sudo apt-get install click curl dpkg-dev python-lzma python-requests imagemagick ubuntu-dev-tools
 

Aber wenn Sie mit dieser Art von Fehler enden:
Paket kann nicht installiert werden / Paket nicht verfügbar / kein Installationskandidat etc

Sie können dann hier oder hier nach Möglichkeiten suchen, diese zu installieren .
Mit dem obigen Beispiel sollten Sie in der Lage sein, eine Seite wie diese zu finden und dann einen PPA zu verwenden oder eine .deb-Datei für 32-Bit oder eine .deb-Datei für 64-Bit zu installieren .


0


2014-03-02