GCC 7 unter Ubuntu installieren?


11

Ich versuche, einen Test unter GCC 7 durchzuführen. Laut Wie installiere ich gcc-7 oder clang 4.0? Unter Ubuntu.SE können wir Folgendes ausführen, um GCC 7 unter Ubuntu zu installieren:

add-apt-repository ppa:ubuntu-toolchain-r/test && apt-get update && apt-get install -y gcc-7

Der Befehl schlägt bei der Installation fehl:

# apt-get install -y gcc-7
...
E: Unable to locate package gcc-7

Und versuchen Sie es mit 7.1:

# apt-get install -y gcc-7.1
...
E: Unable to locate package gcc-7.1
E: Couldn't find any package by glob 'gcc-7.1'
E: Couldn't find any package by regex 'gcc-7.1'

Laut Liste aller Pakete aus einem Repository in Ubuntu / Debian bei Serverfehler können wir ein bestimmtes Repo nach einem Paket durchsuchen mit:

# grep ^Package: /var/lib/apt/lists/ppa.launchpad.net_*_Packages | grep gcc-7
#

Ich bin mir jedoch nicht sicher, ob der obige Befehl sucht ppa:ubuntu-toolchain-r.

Ich habe Dinge zusammengesetzt, aber sie funktionieren nicht wie erwartet. Entweder ist die Ubuntu.SE-Antwort falsch, die Suche nach Serverfehlern schlägt fehl oder ich mache etwas falsch.

(Ich habe keine Debain 8-Maschine für das gcc-7-Paket verfügbar , und Fedora 25 scheint GCC 7 zu fehlen. Ich bin also ziemlich fest mit Ubuntu verbunden.)

Was mache ich falsch? Oder wie kann ich GCC 7 installieren?


# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.10
Release:        16.10
Codename:       yakkety
ubuntu  apt  gcc  ppa 

3
Die ubuntu-toolchain-r/testPPA scheint kein gcc-7 für Ubuntu 16.10 (Yakkety) bereitzustellen - obwohl dies sowohl für 16.04 (Xenial) als auch für 17.04 (Zesty) der Fall ist - wie Sie im Team "PPA für Ubuntu Toolchain Uploads (eingeschränkt)" und sehen können Filterung nach Serien
Steeldriver

Danke Steeldriver. Die Erweiterung des Carets mit der Bezeichnung "Technische Details zu diesem PPA" scheint zu zeigen, dass es für 16.10 verfügbar ist. Seltsam ... Ich denke, ich werde diesen Fehlerbericht auf Eis legen, bis wir eine Distribution finden, die GCC 7 bereitstellt.

Die PPA ist für 16.10 verfügbar, bietet jedoch nicht dieselben Pakete - möglicherweise, weil 16.10 keine LTS-Version ist
steeldriver

Für diejenigen, die dies nicht zum Laufen bringen können (wie ich), siehe auch Wie kann ich das Hinzufügen eines PPA rückgängig machen und Pakete daraus installieren? auf Ubuntu Stack Exchange.

Antworten:


7

Um gcc-7auf Ubuntu zu installieren , sollten Sie dieses ppa verwenden :

sudo add-apt-repository ppa:jonathonf/gcc-7.1
sudo apt-get update

Dann renne: apt-cache search gcc-7

Beispielausgabe:

gcc-7-base - GCC, the GNU Compiler Collection (base package)
gcc-7 - GNU C compiler
gcc-7-multilib - GNU C compiler (multilib support)
gcc-7-plugin-dev - Files for GNU GCC plugin development.
gcc-7-test-results - Test results for the GCC test suite
lib32gcc-7-dev - GCC support library (32 bit development files)
libgcc-7-dev - GCC support library (development files)
gcc-7-doc - Documentation for the GNU compilers (gcc, gobjc, g++)
gcc-7-hppa64-linux-gnu - GNU C compiler (cross compiler for hppa64)
gcc-7-locales - GCC, the GNU compiler collection (native language support files)
gcc-7-source - Source of the GNU Compiler Collection
libx32gcc-7-dev - GCC support library (x32 development files)
gcc-7-offload-nvptx - GCC offloading compiler to NVPTX
lib64gcc-7-dev - GCC support library (64bit development files)

Installieren gcc-7:

sudo apt install gcc-7

6
Danke GAD3R. Weißt du wer Jonathonf ist? Ich versuche, Ubuntus Ausrüstung zu verwenden, weil sie bereits vertrauenswürdig ist. Ansonsten muss ich durch die Reifen springen, um herauszufinden, wer Jonathonf ist, und feststellen, ob er eine vertrauenswürdige Quelle ist.

Sollte es auch für Linaro funktionieren?
Nadav B

2

Ubuntu 18.04 hat sowohl GCC 7 (7.3.0-16ubuntu3, im Moment schreibe ich diese Antwort) als auch GCC 8 (8-20180414-1ubuntu2). Es ist nicht mehr erforderlich, Repositorys von Drittanbietern hinzuzufügen: Einfach ausführen sudo apt-get install gcc-7.


1

Wenn Sie mit dem Compiler einen Prüfstand einrichten müssen, dann Fedora 26 mit GCC 7.1 ausgeliefert.

Sie finden GCC 7 auch in Debian 10 / Buster (Debian 9 mit aktiviertem Test-Repo). Für Debian müssen Sie apt-get install gcc-7 g++-7.

Der Vollständigkeit halber ist nicht klar, welche Version der Microsoft-Compiler C ++ 17 unterstützt und std::byte(der Grund, warum ich den Compiler zum Testen benötigte).

Und danke an GAD3R für seine Hilfe. Der Grund, warum ich es vermieden habe, war, dass ich für einige der PPAs keine Herkunft feststellen konnte.

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.