it-swarm.com.de

G ++ 7.0.1 unter Debian 8.7 installieren

Ich habe schon länger versucht, g ++ 7 auf meinem Debian-Rechner zu installieren. Ich konnte es ziemlich einfach auf meinem Mac installieren (da Homebrew eine Formel dafür hatte). Ich kann jedoch keinen Weg finden, es unter Linux zu installieren.

Diese Person hatte einen Thread bei der Installation von g ++ 4.9, und das Ändern der angegebenen URL führte mich zu dieser Seite , die in die richtige Richtung zu sein scheint ... Aber ich kann mir vorstellen, dass die Installation auf diese Weise führen könnte auf einige potentielle Probleme, wenn ich diese Pakete aktualisieren möchte.

Gibt es eine Quelle, die mir fehlt? Oder gibt es vielleicht einen Ort, an dem ich alles herunterladen und kompilieren kann, um es zum Laufen zu bringen?

Danke für deine Hilfe.

Hilfreiche Daten:
Mein Kernel ist x86_64 Linux 3.16.0-4-AMD64.

Edit: Nach den Ratschlägen von Dietrich stößt ich auf einen neuen Fehler:

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:
 gcc-7 : Depends: cpp-7 (= 7-20170316-1) but it is not going to be installed
         Depends: libcc1-0 (>= 7-20170316-1) but it is not going to be installed
         Depends: binutils (>= 2.28) but 2.25-5+deb8u1 is to be installed
         Depends: libgcc-7-dev (= 7-20170316-1) but it is not going to be installed
         Depends: libisl15 (>= 0.15) but it is not installable
         Depends: libmpfr4 (>= 3.1.3) but 3.1.2-2 is to be installed
         Depends: libstdc++6 (>= 5) but 4.9.2-10 is to be installed
E: Unable to correct problems, you have held broken packages.

So wird meine sources.list eingerichtet:

#------------------------------------------------------------------------------#
#                   OFFICIAL DEBIAN REPOS                    
#------------------------------------------------------------------------------#

###### Debian Main Repos
deb http://ftp.us.debian.org/debian/ jessie main contrib non-free 
deb-src http://ftp.us.debian.org/debian/ jessie main contrib non-free 

###### Debian Update Repos
deb http://security.debian.org/ jessie/updates main contrib non-free 
deb http://ftp.us.debian.org/debian/ jessie-proposed-updates main contrib non-free 
deb-src http://security.debian.org/ jessie/updates main contrib non-free 
deb-src http://ftp.us.debian.org/debian/ jessie-proposed-updates main contrib non-free 

###### For ffmpeg
deb http://www.deb-multimedia.org jessie main non-free

###### For gcc-7 (Experimental)
deb http://httpredir.debian.org/debian experimental main

Ich vermute, das ist, wie Sie sagten, ein Problem, weil ich im Debian-Stall bin? Was muss ich tun, um diesen Fehler zu beheben und dabei stabil zu bleiben?

Edit 2: Okay, ich habe den letzten Fehler herausgefunden. Ich musste einfach für jede einzelne Abhängigkeit, die meine Probleme verursacht hat, Durchgehen hinzufügen und diese mit apt-get install -t testing installieren. Vielen Dank an alle, die geantwortet haben. Sie waren alle sehr hilfsbereit.

4
Robert D

Der Kernel spielt keine Rolle.

GCC 7 wurde noch nicht veröffentlicht, wie Sie in den GCC 7-Versionshinweisen sehen können:

Haftungsausschluss: GCC 7 wurde noch nicht veröffentlicht, daher ist dieses Dokument noch in Bearbeitung.

Vielleicht möchten Sie erfahren, was verschiedene Linux-Distributionen unterscheidet. Was genau ein rollende Verteilung ist und wie Debian-Releases funktioniert. In einer rollierenden Distribution werden alle Pakete ständig auf neuere Versionen aktualisiert. Debian 8.7 (Jessie/stable) ist nicht eine Rollverteilung. Die Paketversionen werden eingefroren und nur bei Bedarf aktualisiert, um zusätzliche Stabilität zu gewährleisten. Die neueste Version von GCC unter Debian 8.7 ist GCC 4.9.

Debian 9.0 (Stretch/testing) ist eine Roll-Release, zumindest bis zum Einfrieren. Wenn Sie Ihren Computer auf Stretch umstellen, erhalten Sie GCC 6.3.

Wenn Sie etwas Neues benötigen, können Sie entweder zu Sid (instabil) wechseln oder Pakete von Sid anheften.

GCC 7 ist jedoch nur in experimentell verfügbar , da es noch nicht veröffentlicht wurde. Wenn Sie möchten, können Sie ein einzelnes Paket von experiment installieren, siehe Debian Experimental für Anweisungen.

Wie man

Fügen Sie Ihrem /etc/apt/sources.list hinzu

https://wiki.debian.org/DebianExperimental

Dann

apt-get update
apt-get -t experimental install gcc-7
4
Dietrich Epp

Ähnliches finden Sie in den Stack-Overflow-Unix-Seiten Um das neueste g ++ von testing unter debian zu installieren, führen Sie folgende Schritte aus: Fügen Sie debian testing repo zu Ihren apt-Quellen hinzu, indem Sie eine Datei unter/etc/erstellen. apt/sources.list.d Ordner, der die Zeile enthält 

deb http://ftp.us.debian.org/debian testing main contrib non-free

Weisen Sie Debian an, Testquellen für bestimmte Pakete zu verwenden, indem Sie eine Datei auf /etc/apt/preferences.d erstellen, die Folgendes enthält:

Package: *
Pin: release a=testing
Pin-Priority: 100

Sie sollten der Datei einen Namen wie Präferenzen oder testingpref usw. Geben. Wenn Sie eine Voreinstellungsdatei haben, können Sie diese dort hinzufügen. Entfernen Sie die unbenutzte oder eine beliebige. im Dateinamen.

Datenbank auf den neusten Stand bringen: 

Sudo apt-get update

Installieren Sie g ++: 

Sudo apt-get install -t testing g++

Dadurch erhalten Sie die aktuellste Version von g ++ im Repo. Somit wird es Updates erhalten und einfacher rückgängig gemacht. Sie müssen -t testing verwenden, um die aktuellsten Versionen zu erhalten. Möglicherweise haben Sie Abhängigkeitsprobleme. Es kann experimentell statt für Ihre Architektur getestet werden. Siehe https://packages.debian.org/search?keywords=g%2B%2B

Für experimentelle Pakete (7 ist da drin):

deb http://httpredir.debian.org/debian experimental main

zu /etc/apt/sources.list. Ähnlich wie oben .. Pinning sollte a = experimentell anstelle von a = testing und zum Schluss:

Sudo apt-get install -t experimental g++

Viel Glück.

6
Ryan

Von der Seite müssen Sie die g ++ 7 für AMD64-Deb-Datei herunterladen. Führen Sie dann als root den folgenden Befehl aus.

dpkg -i file.deb
0
user7735434