Gcc-8 nur unter Ubuntu 18.04 installieren?

33

Ich habe gerade Lubuntu 18.04 LTS installiert. Es gibt zwei Möglichkeiten, um gcc zu installieren: gcc-7und gcc-8. Beide sind ab Werk erhältlich apt-get install.

Auch nach der Installation gcc-8wird das System weiterhin installiert, gcc-7wenn ich andere Pakete installiere, z build-essential.

Da gcc-8es neuer ist, gibt es eine Möglichkeit, es zu installieren gcc-8und gcc-8nur?

Tinlyx
quelle
1
Nur nicht installieren, build-essentialsondern die anderen Pakete, von denen es direkt abhängt? dpkg-dev g++-8 gcc-8 libc6-dev libc-dev make
Muru
gcc-7 wird von gcc-8 benötigt. Hinweis: Sie können beliebig viele gcc / g ++ - Versionen gleichzeitig installieren. Bionische Extras: g++-4.8 g++-5 g++-6 g++-8... ... g ++ - 7 / gcc-7 ist der System-Compiler. Die älteren Versionen werden zum Erstellen einiger älterer Anwendungen benötigt.
Knud Larsen
@KnudLarsen "gcc-7 wird von gcc-8 benötigt" was?
ZachB

Antworten:

55

gcc-7und gcc-8werden gerne zusammen leben.

Ich würde vorschlagen, gcc-7die Installation zuzulassen, um zufriedenstellende build-essentialund möglicherweise andere abhängige Pakete zu erhalten, und gcc-8sie als Standard-GCC-Installation zu konfigurieren .

Verwenden Sie diese update-alternativesOption, gccum automatisch weitergeleitet zu werden zu gcc-8:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 700 --slave /usr/bin/g++ g++ /usr/bin/g++-7
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 800 --slave /usr/bin/g++ g++ /usr/bin/g++-8

Dies gibt Ihnen die Bequemlichkeit, dass gcc auf der neuesten Version ist und Sie trotzdem in der Lage sind, direkt gcc-7oder aufzurufen gcc-8.

Wenn Sie die Standard-GCC-Version später ändern möchten, führen Sie sie aus sudo update-alternatives --config gcc. Es wird eine Eingabeaufforderung ähnlich der folgenden angezeigt, mit der Sie die zu verwendende Version auswählen können:

There are 2 choices for the alternative gcc (providing /usr/bin/gcc).

  Selection    Path            Priority   Status
------------------------------------------------------------
* 0            /usr/bin/gcc-8   800       auto mode
  1            /usr/bin/gcc-7   700       manual mode
  2            /usr/bin/gcc-8   800       manual mode

Press <enter> to keep the current choice[*], or type selection number: 

Die höhere Priorität ist diejenige, die automatisch von ausgewählt wird update-alternatives.

Valiano
quelle
11

GCC 8 unter Ubuntu 16.04

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-8 g++-8
gcc-8 --version

gibt 8.1.0 ab 2018-11. Siehe auch:

GCC 9 unter Ubuntu 19.04

sudo apt install gcc-9

https://packages.ubuntu.com/search?keywords=gcc-9

Ciro Santilli ist ein Schauspieler
quelle
1
Dies beantwortet die Frage nicht. Diese Informationen könnten für eine vollständig separate Frage relevant sein, aber diese hat bereits die Antwort: askubuntu.com/q/466651/113421 .
Ruslan
@ Ruslan danke für das Feedback. 100x Googlern zu helfen ist wichtiger als 1 OP zu helfen
;-)