Installieren Sie g ++ ubuntu 14.04 Abhängig von: g ++ - 4.8 (> = 4.8.2-5 ~), aber es wird nicht installiert


9

Ich habe gerade getippt:

sudo apt-get install g++

und bekam:

The following packages have unmet dependencies:
 g++ : Depends: g++-4.8 (>= 4.8.2-5~) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Ich habe es auch nach Vorschlägen in anderen Foren versucht:

sudo apt-get update

und

sudo apt-get -f install

Keiner hat mein Problem gelöst. Bitte helfen Sie, wenn Sie die Antwort kennen.

BEARBEITEN:

Gemäß dem im Kommentar enthaltenen Vorschlag habe ich versucht:

sudo apt-cache policy g++-4.8

und bekam die folgende Ausgabe:

g++-4.8:
  Installed: (none)
  Candidate: 4.8.2-19ubuntu1
  Version table:
     4.8.2-19ubuntu1 0
        500 http://ca.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages

Indem Sie versuchen:

sudo apt-get install g++-4.8

Ich habe:

The following packages have unmet dependencies:
 g++-4.8 : Depends: gcc-4.8-base (= 4.8.2-19ubuntu1) but 4.8.4-2ubuntu1~14.04 is to be installed
           Depends: gcc-4.8 (= 4.8.2-19ubuntu1) but 4.8.4-2ubuntu1~14.04 is to be installed
           Depends: libstdc++-4.8-dev (= 4.8.2-19ubuntu1) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Was sind die Ausgaben / Fehler dieser apt-getBefehle?
— Daniel

apt-get update aktualisiert nur das Repository ... viele Ausgabezeilen, aber keine Fehler ... apt-get -f install gibt: 0 aktualisiert, 0 neu installiert, 0 zu entfernen und 44 nicht aktualisiert.
— alecrosic

Bearbeiten Sie Ihre Frage und fügen Sie die Ausgabe vonapt-cache policy g++-4.8
— AB

Versuchen Sie, die Installation über zu erzwingen sudo apt-get install g++-4.8und fügen Sie die Ausgabe Ihrer Frage hinzu. Sie sollten eine andere Fehlermeldung sehen. Und wir brauchen diese Nachricht, um das eigentliche Problem zu finden.
— AB

Und gib mir einen Kommentar mit @A.B.Ohne dass ich keine Benachrichtigung bekomme, dass du deine Frage geändert hast.
— AB

Antworten:


9

Das Problem ist:

libstdc++-4.8-dev : Depends: gcc-4.8-base (= 4.8.2-19ubuntu1) but 4.8.4-2ubuntu1~14.04 is to be installed

Warum? Deshalb:

  • libstdc++-4.8-dev in den Haupt-Repositories hängt davon ab libstdc++-4.8-dev=4.8.2-19ubuntu1

  • libstdc++-4.8-devim Updates-Repository hängt davon ab libstdc++-4.8-dev=4.8.4-2ubuntu1~14.04, welches auf Ihrem System installiert ist


Die Lösung?

Meine erste Wahl ist, das Update-Repository erneut zu aktivieren:

  • Öffnen Sie Software & Updatesund die RegisterkarteUpdates

  • Wählen Sie trusty-updatesund trusty-securityund klicken SieClose

    Wenn jemand eine Version für das Terminal hat, lassen Sie es mich bitte wissen.

    Geben Sie hier die Bildbeschreibung ein

  • Reload

    Geben Sie hier die Bildbeschreibung ein

  • Installieren

    sudo apt-get install g++
    

Meine zweite Wahl, Downgrade

Hmm, ich würde sagen, das ist eine schlechte Idee =)


Das Aktivieren der Updates und das Nachladen funktionieren! Vielen Dank.
— alecrosic

Diese wurden bereits für mich überprüft, aber das Deaktivieren und erneute Überprüfen und anschließende Neuladen funktioniert auch.
— Mitch

0

Da das Ubuntu 14.04 der Quelle zu alt oder nicht zugänglich ist. Daher sollten wir die Quelle aktualisieren. Dies wird behoben. Zuerst sollten wir die Quelldatei sichernsources.list

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

Laut der Ubuntu-Version sollen die neuen Quellen hinzugefügt werden.

  1. Fragen Sie den Versionsbefehl ab:

    lsb_release -a
    

    Dann werden die Informationen gedruckt wie:

    No LSB modules are available.
    Distributor ID: Ubuntu
    Description:    Ubuntu 14.04.4 LTS
    Release:    14.04
    Codename:   trusty
    
  2. Entsprechend der Version zur Auswahl der Suitbale-Quelle und am Ende der Datei '/etc/apt/sources.list' hinzufügen.

    http://wiki.ubuntu.org.cn/Template:14.04source,
    

    Ubuntu 14.04 Quelle:

    deb http://archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse
    deb http://archive.ubuntu.com/ubuntu/ trusty-security main restricted universe multiverse
    deb http://archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse
    deb http://archive.ubuntu.com/ubuntu/ trusty-proposed main restricted universe multiverse
    deb http://archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse
    deb-src http://archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse
    deb-src http://archive.ubuntu.com/ubuntu/ trusty-security main restricted universe multiverse
    deb-src http://archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse
    deb-src http://archive.ubuntu.com/ubuntu/ trusty-proposed main restricted universe multiverse
    deb-src http://archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse
    
  3. Quelle aktualisieren

    sudo apt-get update
    
  4. okay

    sudo apt-get install g++
    
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.