devtoolset bietet jetzt 5.3.1 - siehe meine Antwort unten für die Befehle zum Aktivieren und Installieren mit yum.
tesch1
Antworten:
182
Update:
Oft möchten die Leute die neueste Version von gcc und devtoolset wird auf dem neuesten Stand gehalten. Vielleicht möchten Sie devtoolset-N mit N = {4,5,6,7 ...} spätestens auf Ihrem System verfügbar). Die folgenden cmds für N = 7 wurden aktualisiert.
Als Beispiel gibt es ein Paket für gcc-7.2.1 für devtoolset-7. Zuerst müssen Sie die Software-Sammlungen aktivieren , dann ist sie in devtoolset-7 verfügbar:
Die gcc-Version in devtoolset wurde in der Zwischenzeit auf 5.3.1
tesch1
4
Nicht nur das, aber Sie können devtoolset-6 installieren, um 6.2.1
Rahly
4
Das Ändern des Symlinks ist nicht das Beste, da er wahrscheinlich einem anderen Paket gehört / von diesem verwaltet wird, das aktualisiert werden könnte. Es ist besser, es in Ihrem Login oder im systemweiten Login-Skript mit scl enable devtoolset-6 bashoder . /opt/rh/devtoolset-6/bin/enableaktualisiertem Link zu Software-Tools-Dokumenten zu
aktivieren
1
Das Ausführen yum install devtoolset-4-binutilskann ebenfalls hilfreich sein, um eine vollständige GCC-Toolchain zu erhalten.
Prüfung
5
Ich habe source scl_source enable devtoolset-4meinen aktuellen gcc mit dem vondevtoolset-4
WF
74
Update: Installation der neuesten Version von gcc 9: ( gcc 9.3.0 ) - veröffentlicht am 12. März 2020 :
//required libraries: (some may already have been installed)
dnf install libmpc-devel mpfr-devel gmp-devel//if dnf install libmpc-devel is not working try:
dnf --enablerepo=PowerTools install libmpc-devel//install zlib
dnf install zlib-devel*./configure --with-system-zlib --disable-multilib --enable-languages=c,c++
make -j 8<==this may take around an hour or more to finish(depending on your cpu speed)
make install
//required libraries:
yum install libmpc-devel mpfr-devel gmp-devel./configure --with-system-zlib --disable-multilib --enable-languages=c,c++
make -j 8<==this may take around 50 minutes or less to finish with 8 threads(depending on your cpu speed)
make install
2. Verwenden Sie die Option --prefix, um gcc in einem anderen als dem Standardverzeichnis zu installieren. Das Installationsverzeichnis der obersten Ebene ist standardmäßig / usr / local. Lesen Sie mehr über die gcc-Installationsoptionen
Warum von ftp.mirrorservice.org anstatt von ftp.gnu.org herunterladen? Sie sollten auch die entsprechende .sigDatei (die pgp-Signatur) herunterladen und überprüfen .
Keith Thompson
Die Konfiguration wie gezeigt ohne --prefix wird in / usr / local / installiert, was möglicherweise vor Ihrer ursprünglichen gcc-Installation auf PATH
tim18,
1
make -j $(nproc)
Chepe Questn
2
Das Kompilieren dauerte mehr als 4 Stunden und mehr als 6 GB Festplattenspeicher.
iDevFS
Wie tim18 vorschlug, ist es sicher, make && make installohne zu laufen --prefix? Wenn dies der /usr//usr/localconfig.logConfigured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info ...
Fall
6
Sie können das Cento-Sclo-Rh-Test-Repo verwenden, um GCC v7 zu installieren, ohne es für immer kompilieren zu müssen. Aktivieren Sie außerdem standardmäßig V7 und lassen Sie bei Bedarf zwischen verschiedenen Versionen wechseln.
Während dieser Code die Frage beantworten kann, ist es besser zu erklären, wie das Problem gelöst werden kann, und den Code als Beispiel oder Referenz bereitzustellen. Nur-Code-Antworten können verwirrend sein und keinen Kontext haben.
Robert Columbia
Leider aktualisiert diese Lösung die /usr/lib64/libstdc++.soDatei nicht, um die neueren Symbole zu erhalten.
schuppiger
5
Der beste Ansatz, um yum zu verwenden und Ihr devtoolset zu aktualisieren, ist die Verwendung des CentOS SCLo RH Testing-Repositorys.
Viele zusätzliche Pakete sind ebenfalls verfügbar, um sie alle zu sehen
yum --enablerepo=centos-sclo-rh-testing list devtoolset-7*
Mit dieser Methode können Sie jede Dev-Tool-Version installieren. Tauschen Sie einfach die 7 gegen die gewünschte Version aus. devtoolset-6-gcc, devtoolset-5-gcc usw.
yum
irgendwo eine Ressource?Antworten:
Update:
Oft möchten die Leute die neueste Version von gcc und devtoolset wird auf dem neuesten Stand gehalten. Vielleicht möchten Sie devtoolset-N mit N = {4,5,6,7 ...} spätestens auf Ihrem System verfügbar). Die folgenden cmds für N = 7 wurden aktualisiert.
Als Beispiel gibt es ein Paket für gcc-7.2.1 für devtoolset-7. Zuerst müssen Sie die Software-Sammlungen aktivieren , dann ist sie in devtoolset-7 verfügbar:
quelle
scl enable devtoolset-6 bash
oder. /opt/rh/devtoolset-6/bin/enable
aktualisiertem Link zu Software-Tools-Dokumenten zuyum install devtoolset-4-binutils
kann ebenfalls hilfreich sein, um eine vollständige GCC-Toolchain zu erhalten.source scl_source enable devtoolset-4
meinen aktuellen gcc mit dem vondevtoolset-4
Update: Installation der neuesten Version von gcc 9: ( gcc 9.3.0 ) - veröffentlicht am 12. März 2020 :
Die gleiche Methode kann auf gcc 10 ( gcc 10.1.0 ) angewendet werden - veröffentlicht am 7. Mai 2020
Datei herunterladen: gcc-9.3.0.tar.gz oder gcc-10.1.0.tar.gz
Kompilieren und installieren:
Getestet unter CentOS 7.8.2003 für gcc 9.3 und gcc 10.1
Getestet unter CentOS 8.1.1911 für gcc 10.1 (das Kompilieren kann länger dauern)
Ergebnisse: gcc / g ++ 9.3.0 / 10.1.0
Installation von gcc 7.4 (gcc 7.4.0) - veröffentlicht am 6. Dezember 2018 :
Datei herunterladen: https://ftp.gnu.org/gnu/gcc/gcc-7.4.0/gcc-7.4.0.tar.gz
Kompilieren und installieren:
Ergebnis:
Anmerkungen:
1. Mit dieser Antwort zum Stapelüberlauf erfahren Sie, wie Sie die heruntergeladene Quelldatei überprüfen können.
2. Verwenden Sie die Option
--prefix
, um gcc in einem anderen als dem Standardverzeichnis zu installieren. Das Installationsverzeichnis der obersten Ebene ist standardmäßig / usr / local. Lesen Sie mehr über die gcc-Installationsoptionenquelle
.sig
Datei (die pgp-Signatur) herunterladen und überprüfen .make -j $(nproc)
make && make install
ohne zu laufen--prefix
? Wenn dies der/usr/
/usr/local
config.log
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info ...
Sie können das Cento-Sclo-Rh-Test-Repo verwenden, um GCC v7 zu installieren, ohne es für immer kompilieren zu müssen. Aktivieren Sie außerdem standardmäßig V7 und lassen Sie bei Bedarf zwischen verschiedenen Versionen wechseln.
quelle
/usr/lib64/libstdc++.so
Datei nicht, um die neueren Symbole zu erhalten.Der beste Ansatz, um yum zu verwenden und Ihr devtoolset zu aktualisieren, ist die Verwendung des CentOS SCLo RH Testing-Repositorys.
Viele zusätzliche Pakete sind ebenfalls verfügbar, um sie alle zu sehen
Mit dieser Methode können Sie jede Dev-Tool-Version installieren. Tauschen Sie einfach die 7 gegen die gewünschte Version aus. devtoolset-6-gcc, devtoolset-5-gcc usw.
quelle
Befehl zum Installieren von GCC und Entwicklungstools auf einem CentOS / RHEL 7-Server
Geben Sie den folgenden yum-Befehl als Root-Benutzer ein:
yum group install "Entwicklungstools"
ODER
sudo yum group install "Entwicklungstools"
Wenn der obige Befehl fehlgeschlagen ist, versuchen Sie:
yum groupinstall "Entwicklungstools"
quelle