devtoolset ahora proporciona 5.3.1; vea mi respuesta a continuación para ver los comandos para habilitarlo e instalarlo usando yum.
tesch1
Respuestas:
184
Actualización: a
menudo, la gente quiere la versión más reciente de gcc, y devtoolset se mantiene actualizado, por lo que tal vez desee devtoolset-N donde N = {4,5,6,7 ...}, marque yum para más reciente disponible en su sistema). Se actualizaron los cmds a continuación para N = 7.
Hay un paquete para gcc-7.2.1 para devtoolset-7 como ejemplo. Primero debe habilitar las colecciones de software , luego está disponible en devtoolset-7:
mientras tanto, la versión gcc en devtoolset se ha aumentado a 5.3.1
tesch1
4
No solo eso, sino que puede instalar devtoolset-6 para obtener 6.2.1
Rahly
5
cambiar el enlace simbólico no es lo mejor que se puede hacer, ya que probablemente sea propiedad o esté administrado por otro paquete que podría actualizarse. Es mejor para activarlo en su nombre de usuario o en la escritura de la conexión de todo el sistema con scl enable devtoolset-6 basho . /opt/rh/devtoolset-6/bin/enableenlace de actualización de software de herramientas de documentación
tesch1
1
La ejecución también yum install devtoolset-4-binutilspuede ser útil para obtener una cadena de herramientas completa de GCC.
scrutari
5
Solía source scl_source enable devtoolset-4cambiar mi gcc actual con el instalado pordevtoolset-4
WF
74
Actualización: Instalación de la última versión de gcc 9: ( gcc 9.3.0 ) - publicada el 12 de marzo de 2020 :
El mismo método se puede aplicar a gcc 10 ( gcc 10.1.0 ) - lanzado el 7 de mayo de 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. Utilice la opción --prefixpara instalar gcc en otro directorio que no sea el predeterminado. El directorio de instalación de nivel superior tiene por defecto / usr / local. Más información sobre las opciones de instalación de gcc
¿Por qué descargar de ftp.mirrorservice.org en lugar de ftp.gnu.org? También debe descargar y verificar el .sigarchivo correspondiente (la firma pgp).
Keith Thompson
La configuración como se muestra sin --prefix se instalará en / usr / local / que puede o no adelantarse a su instalación original de gcc en PATH
tim18
1
make -j $(nproc)
Chepe Questn
2
Esto me tomó más de 4 horas compilar y más de 6 GB de espacio en el disco duro.
iDevFS
Como sugirió tim18, ¿es seguro correr make && make installsin él --prefix? Si lo hace, todo está instalado en /usr/ni siquiera /usr/local, verifique el config.log:Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info ...
Celdor
6
El mejor enfoque para usar yum y actualizar su conjunto de herramientas es utilizar el repositorio de pruebas CentOS SCLo RH.
También hay muchos paquetes adicionales disponibles, para verlos todos
yum --enablerepo=centos-sclo-rh-testing list devtoolset-7*
Puede usar este método para instalar cualquier versión de la herramienta de desarrollo, simplemente cambie la 7 por la versión deseada. devtoolset-6-gcc, devtoolset-5-gcc, etc.
Puede usar el repositorio centos-sclo-rh-testing para instalar GCC v7 sin tener que compilarlo para siempre, también habilitar V7 de forma predeterminada y permitirle cambiar entre diferentes versiones si es necesario.
Si bien este código puede responder la pregunta, es mejor explicar cómo resolver el problema y proporcionar el código como ejemplo o referencia. Las respuestas de solo código pueden ser confusas y carecer de contexto.
Robert Columbia
Lamentablemente, esta solución no actualiza el /usr/lib64/libstdc++.soarchivo para que tenga los símbolos más nuevos.
escamoso
-11
Comando para instalar GCC y herramientas de desarrollo en un servidor CentOS / RHEL 7
Escriba el siguiente comando yum como usuario root:
yum group instala "Herramientas de desarrollo"
O
sudo yum group instala "Herramientas de desarrollo"
yum
recurso en alguna parte?Respuestas:
Actualización: a
menudo, la gente quiere la versión más reciente de gcc, y devtoolset se mantiene actualizado, por lo que tal vez desee devtoolset-N donde N = {4,5,6,7 ...}, marque yum para más reciente disponible en su sistema). Se actualizaron los cmds a continuación para N = 7.
Hay un paquete para gcc-7.2.1 para devtoolset-7 como ejemplo. Primero debe habilitar las colecciones de software , luego está disponible en devtoolset-7:
fuente
scl enable devtoolset-6 bash
o. /opt/rh/devtoolset-6/bin/enable
enlace de actualización de software de herramientas de documentaciónyum install devtoolset-4-binutils
puede ser útil para obtener una cadena de herramientas completa de GCC.source scl_source enable devtoolset-4
cambiar mi gcc actual con el instalado pordevtoolset-4
Actualización: Instalación de la última versión de gcc 9: ( gcc 9.3.0 ) - publicada el 12 de marzo de 2020 :
El mismo método se puede aplicar a gcc 10 ( gcc 10.1.0 ) - lanzado el 7 de mayo de 2020
Descargar archivo: gcc-9.3.0.tar.gz o gcc-10.1.0.tar.gz
Compila e instala:
Probado bajo CentOS 7.8.2003 para gcc 9.3 y gcc 10.1
Probado bajo CentOS 8.1.1911 para gcc 10.1 (puede llevar más tiempo compilar)
Resultados: gcc / g ++ 9.3.0 / 10.1.0
Instalación de gcc 7.4 (gcc 7.4.0) , publicada el 6 de diciembre de 2018 :
Descargar archivo: https://ftp.gnu.org/gnu/gcc/gcc-7.4.0/gcc-7.4.0.tar.gz
Compila e instala:
Resultado:
Notas:
1. Esta respuesta de Stack Overflow le ayudará a ver cómo verificar el archivo fuente descargado.
2. Utilice la opción
--prefix
para instalar gcc en otro directorio que no sea el predeterminado. El directorio de instalación de nivel superior tiene por defecto / usr / local. Más información sobre las opciones de instalación de gccfuente
.sig
archivo correspondiente (la firma pgp).make -j $(nproc)
make && make install
sin él--prefix
? Si lo hace, todo está instalado en/usr/
ni siquiera/usr/local
, verifique elconfig.log
:Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info ...
El mejor enfoque para usar yum y actualizar su conjunto de herramientas es utilizar el repositorio de pruebas CentOS SCLo RH.
También hay muchos paquetes adicionales disponibles, para verlos todos
Puede usar este método para instalar cualquier versión de la herramienta de desarrollo, simplemente cambie la 7 por la versión deseada. devtoolset-6-gcc, devtoolset-5-gcc, etc.
fuente
Puede usar el repositorio centos-sclo-rh-testing para instalar GCC v7 sin tener que compilarlo para siempre, también habilitar V7 de forma predeterminada y permitirle cambiar entre diferentes versiones si es necesario.
fuente
/usr/lib64/libstdc++.so
archivo para que tenga los símbolos más nuevos.Comando para instalar GCC y herramientas de desarrollo en un servidor CentOS / RHEL 7
Escriba el siguiente comando yum como usuario root:
yum group instala "Herramientas de desarrollo"
O
sudo yum group instala "Herramientas de desarrollo"
Si el comando anterior falló, intente:
yum groupinstall "Herramientas de desarrollo"
fuente