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.
alecrosic
quelle
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 =)

AB
quelle
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++
    
Jack ma
quelle