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

540

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?

jrg
quelle
33
Vergiss den genauen Paketnamen. Es ist für diese Frage irrelevant. Ich versuche eine kanonische Frage zu erstellen . Daher ist das genaue Paket in diesem speziellen Fall nicht relevant.
jrg
33
Tatsächlich ist "der genaue Paketname", obwohl er in Ihrer Frage nicht relevant ist, für die diesbezügliche Frage einer Person äußerst relevant. Normalerweise besteht der beste erste Schritt zur Lösung darin, die Quelle von pkg1 und pkg2 zu identifizieren. Dies scheint in den Antworten übersehen worden zu sein, von denen die meisten ansonsten recht gut sind. 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. Dies ist etwas, das dazu neigt, viele Benutzer zu verwirren, die damit konfrontiert sind, und sollte auch in einer der folgenden Antworten enthalten sein
Doug,
5
@doug Füge das als Antwort und nicht als Kommentar hinzu, es ist ziemlich gut! :)
jrg
1
@Braiam Whaaaat hat allerdings einen Punkt, die Frage ist nicht spezifisch für eine PPA und einige Antworten sind es auch nicht. Ich weiß, dass die ersten beiden Antworten die anderen ein wenig überwältigen, aber ich bin nicht sicher, ob es die richtige Lösung ist, die Art der Frage zu ändern, zumal Sie die anderen Antworten aufheben. Ich lasse es jetzt, da ich keine bessere Antwort habe, aber es ist etwas zum Nachdenken.
Seth
2
Oh, und wo ist meine Frage zur Fehlerbehebung? : D
Seth

Antworten:

561

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-getkann 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.listdiese zu sichern, damit Sie die Änderungen bei Bedarf rückgängig machen können.

  • Wenn das errorso aussieht:

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

    Stellen Sie dann sicher, dass die Repositorys restrictedund universeaktiviert sind. Drücken Sie Alt+ F2, tippen Sie software-properties-gtkund drücken Sie Enter.

    Unter Ubuntu SoftwareRegisterkarte 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 cleanLö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 autocleanLöscht das lokale Repository von abgerufenen Paketdateien, entfernt jedoch im Gegensatz apt-get cleandazu 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 -fhier steht für "fix broken". Aptwird versuchen, defekte Abhängigkeiten zu korrigieren. Wenn Sie ein Paket mit nicht erfüllten Abhängigkeiten manuell installiert haben, apt-getwerden 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, aptdie 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 Sourcesoder,

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

    Wenn Sie auf die Other SoftwareRegisterkarte klicken , sehen Sie, dass jede PPA hier zwei Zeilen enthält, eine für die kompilierten Pakete und eine für die Quelle. UncheckBeide 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 aptfunktioniert, 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 ‚ppa-purge‘ Befehl aus irgendeinem Grund ausfällt, können Sie nicht ‚ppa-purge‘ erneut ausführen , wenn Sie die PPA wieder aktivieren (um die PPA folgen die gleichen Schritte wie eine PPA deaktivieren und aktivieren Sie Checkdie beiden Linien eines bestimmten PPA, um es zu aktivieren).

Hinweis: PPA PurgeEntfernt 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 Purgeist , wird die Verwendung nicht empfohlen, da es nichts gibt, was heruntergestuft werden könnte, und PPA Purgees 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 ManagerPPAs 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 Indicatorim 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-managerY PPA Manager aus.
    • Einmal geöffnet, doppelklicken oder klicken Sie Enterauf Advanced.
    • Wählen Scan and remove duplicate PPAsSie 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, aptist 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
Basharat Sialvi
quelle
3
Wie installiere ich nicht erfüllte Abhängigkeiten, wenn apt kaputt ist?
Tachyonen
4
Dies war eine große Hilfe für mich ... eine Neuinstallation von Lubuntu 12.04 und konnte grundlegende Dinge wie gvim (vim-gtk) oder openssh-server nicht installieren. Ich hatte alle möglichen Befehlszeilenoptionen ausprobiert, einschließlich des buchstäblichen Durchführens eines Unterschieds zwischen /etc/apt/sources.list auf diesem und einem anderen Computer (das funktionierte ordnungsgemäß und führte Xubuntu aus). Nachdem ich dieser Anleitung gefolgt war, stellte ich fest, dass in software-properties-gtk das Kontrollkästchen für die 'Haupt'-Repos deaktiviert war! Problem gelöst!
memilanuk
1
Irgendwann hast du wirklich kaputte Pakete in der Hand gehalten ... Das Beste ist also, sie aufzuheben und zu löschen. Siehe askubuntu.com/a/363244/16395
Rmano
3
Niemand hat geantwortet, wie diese Pakete mit nicht erfüllten Abhängigkeitsversionen installiert werden sollen. Gott! Ich möchte nur die Installation älterer Versionen von Paketen erzwingen.
Marines
3
Das hat bei mir nicht
geklappt
87

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

aptBewahrt 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/partialAusnahme der .lock-Dateien. Dies wird empfohlen

sudo apt-get autoclean

Dieser scannt die Ordner /var/cache/apt/archives/und /var/cache/apt/archives/partialund 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-gtkSie 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-gtkSie 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 aptfunktioniert, 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, aptdie 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 Aufgaben aus, die schwarz umrissen sind


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 nachfragen

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.

Amith KK
quelle
Ich würde in der apt-get updateNähe der Spitze der Liste setzen. Manchmal hat Ihr System ein Update durchgeführt, bei dem ein neueres Paket remote aktualisiert wurde, aber eines, von dem es abhängt, ist noch nicht fertig. Oder die Version, die Sie in Ihrem lokalen Cache haben, wurde aktualisiert. In diesen Fällen apt-get updateaktualisiert ein einfacher Befehl Ihren lokalen Cache und Sie können weitermachen.
Hamish Downer
1
Erstklassige Antwort! Ich wünschte nur, apt und / oder dpkg hätten einen besseren Schutz, um sicherzustellen, dass sie nicht in diese festgefahrenen, zerbrochenen Zustände geraten oder sie besser lösen können. Ich hatte dieses Problem schon einmal und war ziemlich frustriert, als ich apt-get install -fes nicht behoben habe.
Jeff Welling
Möglicherweise möchten Sie auch die folgende Warnung einfügen: "Aktualisieren Sie Ihr System niemals, solange PPA aktiviert ist. Deaktivieren Sie diese zuerst und führen Sie dann ein Upgrade durch." . Sie können das gesamte System nicht auf die niedrigeren Versionsnummern zurückstufen und nichts von einem Standard-Repo installieren, da das Paket von std repo Konflikte mit dem installierten PPA-Paket aufweist.
Anwar
2
Wähle einen besseren Server und behebe ihn für mich. Danke!
Hoang Huynh
Ich dachte, dass die -fFlagge für Kraft steht und es immer vermieden, sie zu verwenden
user907860
38

Bisher konzentrieren sich diese Antworten auf die automatische Behebung eines solchen Problems, hauptsächlich in der Hoffnung, dass es sich von selbst beheben lässt, nicht jedoch auf das Verständnis, wie Abhängigkeiten untersucht werden können. 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 behebt, bevor Sie tiefer gehen. Wenn alles hinter den Kulissen funktioniert, wie es sollte, ist es wichtig 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.

überverschrieben
quelle
3
Zur Erwähnung des Aptitude-Konfliktlösers gewählt. Es gibt Zeiten, in denen es wichtig ist, fortschrittliche Tools wie diese zu verwenden, um die Möglichkeiten zu bestimmen und den Kernkonflikt zu lokalisieren.
John S Gruber
3
Dies könnte tatsächlich die beste Antwort in diesem Thread sein. Es kann sogar mit einem Lernprogramm zum aptitudeKonfliktlöser verbessert werden .
Luís de Sousa
2
Dieser Link erklärt zwar keine Abhängigkeiten oder ihr allgemeines Konzept, zeigt jedoch ein kurzes Tutorial für den interaktiven Resolver: aptitude.alioth.debian.org/doc/en/ch02s03s03.html
overprescribed
1
+1 Eignung hat gerade meinen Speck angesichts eines GTK3-Konflikts gerettet. apt-get war überhaupt keine Hilfe.
Chris Laplante
1
Was ich mag, ist sudo aptitude --full-resolver my_package. Das gibt normalerweise The following packages have unmet dependencieseine Liste und darunter 7) <my_package> [Not Installed](7 ist nur ein Beispiel). Bei jedem Schritt bietet aptitude neue Möglichkeiten. Was für mich gearbeitet wurde zuerst wählen 7, dann r 7(was die Beschreibung entspricht Rejecting the removal of my_package) und dann n (für NO) als die Entscheidungen vorher nicht waren , was ich wollte: aber nach , dass neue Möglichkeiten bot einige Pakete zusammen mit der Installation von my_package Herabstufung; Y
24

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 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 Paketen, die Sie bereits installiert haben, 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 Version> = 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.

Vangel V. Ajanovski
quelle
17

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

Versuchen Sie nach dem Befolgen der Anweisungen, 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 Servervon, Software Sourcesda 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/ppadie 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 Updatesda 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 "zu installierendes <whatever>" wirklich "installiertes <whatever>" 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.

Ashu
quelle
3
@Ashu Eine Sache , die Sie wünschen können fix-- apt-get updatenicht nicht die Aktualisierung apt - Cache (die von heruntergeladenen besteht .debDateien und eine Datei , die Informationen darüber , welche speichert .debDateien , die Sie gespeichert haben). Es aktualisiert die Paketindexdateien (die Informationen darüber enthalten, welche Pakete von jeder verfügbaren Softwarequelle heruntergeladen und installiert werden können). Wie ich schon sagte, apt-get cleanbereinigt nicht das Gleiche, was apt-get updateaktualisiert wird. Siehe man apt-getfür weitere Einzelheiten.
Eliah Kagan,
16

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

sudo apt-get update
sudo apt-get install aptitude

dann,

sudo aptitude install packagename

Zum Beispiel,

    
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: Hängt ab 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} Distributionsinformationsdaten {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 /?]
Avinash Raj
quelle
Ihr Beispiel hat nur die Fähigkeit, die Installation zu stoppen. Es wird eigentlich nichts installiert.
Kiri
2
@AvinashRaj, ..aber vor der Installation aptitudesollte das Abhängigkeitsproblem nicht behoben werden?
präzise
Ja, in den meisten Fällen werden die Abhängigkeiten aufgelöst.
Avinash Raj
2
Ich meine, wenn das System defekte Pakete hat, würde es keine Neuinstallationen zulassen, bis dies behoben ist. Wie würden Sie also installieren, aptitudeohne das Problem zuerst zu lösen?
präzise
In diesem Fall müssen wir zuerst die aptitudebeschädigten Pakete beheben, andernfalls können Sie nicht installieren. Wenn aufgrund beschädigter Pakete kein Fehler aufgetreten ist, können Sie aptitude installieren.
Avinash Raj
11

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 installBeispiel unten). 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 installfü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]?
Michael Franzl
quelle
8

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.

rick@wen-VirtualBox:~$ 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 habe ich festgestellt, dass es eine Abhängigkeitskette wie diese gibt:

 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.

Rick
quelle
Eine kombinierte Lesen dieser Antwort und die andere oben hier gibt ein besseres Verständnis dessen , was ein Abhängigkeitsproblem ist. Wenn andere Antworten hier "stark verallgemeinerte" LÖSUNGEN enthalten, ist dies ein VERSTEHEN.
VenkiPhy6
7

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 in das hinzufügen Software Center -> Bearbeiten-> Softwarequellen-> Andere Quellen-> Hinzufügen "hinzufügen.

    -> Starten Sie die Software Center .

    ->. Gehen Sie im Panel zu Editund 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 wieder in den normalen Zustand zu versetzen.

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 Siesudo apt-get install -f Sie und folgen Sie den Anweisungen auf dem Bildschirm

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

Tachyonen
quelle
@jrg Das habe ich schon in meiner Antwort ... muss jede Antwort dasselbe haben?
Ashu
2
@Ashu Ich versuche, den Leuten zu helfen, eine kanonische Antwort zu geben - und ich muss es jedem sagen , da es um 500 Repräsentanten geht und ich keine Favoriten spielen möchte, indem ich bestimmten Leuten bei ihren Antworten helfe, andere ignoriere . : s
jrg
5

... 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-getarbeitet nebenbei mit dpkg, was bedeutet apt-get, dpkgFunktion 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

Faron
quelle
3

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 i386Befehls hinzufügen .

Beispiel:

avinash@avinash-Lenovo-IdeaPad-Z500:~$ 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.
avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo dpkg --add-architecture i386
avinash@avinash-Lenovo-IdeaPad-Z500:~$ 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] 
Avinash Raj
quelle
Ich bin damit einverstanden, dass dies eine der möglichen Ursachen sein kann. Als ich vlcnach der Installation von Skype versuchte, ein anderes Paket zu installieren (zum Beispiel ), bekam ich die unerfüllte Abhängigkeit. Ich kam aus einer ähnlichen Situation heraus, indem ich :amd64am Ende des Paketnamens hinzufügte , was den Fehler verursachte. Wie hast du dich erholt? Was wäre die beste Lösung?
Souravc
Ich bin nicht sicher, warum dies abgelehnt wurde. Es ist das, was ich brauchte, um 32-Bit-Wine zu installieren. Übrigens, Sie haben einen Tippfehler in --add-architecture, und Sie sollten eine Erinnerung hinzufügen, um apt-get upgrade nach --add-architecture auszuführen.
Matt Chambers
1

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! )

h2ooooooo
quelle
Dies löst das Problem nicht, wenn Sie die genannten Pakete nicht installiert haben.
Braiam
1

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

root@arau:~# 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
Bob Yoplait
quelle
Es ist nichts Neues, im Grunde das Gleiche, was Sie von der bestbewerteten Antwort hier und einer, die folgt, zurückziehen können ...
JoKeR
1
Ja, aber es gibt unzählige Lösungen. Ich erwähne nur, was bei mir funktioniert hat.
Bob Yoplait
0

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 .

Wilf
quelle