devtoolset agora fornece 5.3.1 - veja minha resposta abaixo para os comandos para habilitar e instalar usando yum.
tesch1
Respostas:
182
Atualização:
Freqüentemente as pessoas querem a versão mais recente do gcc, e o devtoolset está sendo mantido atualizado, então talvez você queira devtoolset-N onde N = {4,5,6,7 ...}, verifique o yum para o mais recente disponível em seu sistema). Atualizado os cmds abaixo para N = 7.
Existe um pacote para gcc-7.2.1 para devtoolset-7 como exemplo. Primeiro você precisa habilitar as coleções de software , então está disponível em devtoolset-7:
a versão do gcc no devtoolset, entretanto, aumentou para 5.3.1
tesch1
4
Não só isso, mas você pode instalar devtoolset-6 para obter 6.2.1
Rahly
4
alterar o link simbólico não é a melhor coisa a fazer, já que provavelmente ele é de propriedade / gerenciado por outro pacote que pode ser atualizado. É melhor ativá-lo em seu login ou no script de login de todo o sistema com scl enable devtoolset-6 bashou . /opt/rh/devtoolset-6/bin/enablelink atualizado para ferramentas de software docs
tesch1 01 de
1
A execução também yum install devtoolset-4-binutilspode ser útil para obter o conjunto de ferramentas GCC completo.
scrutari
5
Eu costumava source scl_source enable devtoolset-4trocar meu gcc atual pelo instalado pordevtoolset-4
WF
74
Atualização: Instalando a versão mais recente do gcc 9: ( gcc 9.3.0 ) - lançado em 12 de março de 2020 :
O mesmo método pode ser aplicado ao gcc 10 ( gcc 10.1.0 ) - lançado em 7 de maio 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. Use a opção --prefixde instalar o gcc em outro diretório diferente do padrão. O diretório de instalação de nível superior é padronizado como / usr / local. Leia sobre as opções de instalação do gcc
Por que fazer download de ftp.mirrorservice.org em vez de ftp.gnu.org? Você também deve baixar e verificar o .sigarquivo correspondente (a assinatura pgp).
Keith Thompson
Configurando como mostrado sem --prefix irá instalar em / usr / local / que pode ou não vir antes da instalação original do gcc em PATH
tim18
1
make -j $(nproc)
Chepe Questn
2
Isso me levou mais de 4 horas para compilar e mais de 6 GB de espaço no HDD.
iDevFS
Como tim18 sugeriu, é seguro correr make && make installsem ele --prefix? Se fizer isso, está tudo instalado no /usr/nem mesmo /usr/local, verifique o config.log:Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info ...
Celdor
6
Você pode usar o repositório centos-sclo-rh-testing para instalar o GCC v7 sem ter que compilá-lo para sempre, também habilite o V7 por padrão e permita que você alterne entre versões diferentes, se necessário.
Embora este código possa responder à pergunta, é melhor explicar como resolver o problema e fornecer o código como um exemplo ou referência. Respostas somente em código podem ser confusas e não ter contexto.
Robert Columbia
Infelizmente, esta solução não atualiza o /usr/lib64/libstdc++.soarquivo para ter os símbolos mais recentes.
escamoso
5
A melhor abordagem para usar o yum e atualizar seu devtoolset é utilizar o repositório CentOS SCLo RH Testing.
Muitos pacotes adicionais também estão disponíveis, para ver todos eles
yum --enablerepo=centos-sclo-rh-testing list devtoolset-7*
Você pode usar este método para instalar qualquer versão da ferramenta dev, apenas troque o 7 para a versão desejada. devtoolset-6-gcc, devtoolset-5-gcc etc.
yum
recurso em algum lugar?Respostas:
Atualização:
Freqüentemente as pessoas querem a versão mais recente do gcc, e o devtoolset está sendo mantido atualizado, então talvez você queira devtoolset-N onde N = {4,5,6,7 ...}, verifique o yum para o mais recente disponível em seu sistema). Atualizado os cmds abaixo para N = 7.
Existe um pacote para gcc-7.2.1 para devtoolset-7 como exemplo. Primeiro você precisa habilitar as coleções de software , então está disponível em devtoolset-7:
fonte
scl enable devtoolset-6 bash
ou. /opt/rh/devtoolset-6/bin/enable
link atualizado para ferramentas de software docsyum install devtoolset-4-binutils
pode ser útil para obter o conjunto de ferramentas GCC completo.source scl_source enable devtoolset-4
trocar meu gcc atual pelo instalado pordevtoolset-4
Atualização: Instalando a versão mais recente do gcc 9: ( gcc 9.3.0 ) - lançado em 12 de março de 2020 :
O mesmo método pode ser aplicado ao gcc 10 ( gcc 10.1.0 ) - lançado em 7 de maio de 2020
Baixar arquivo: gcc-9.3.0.tar.gz ou gcc-10.1.0.tar.gz
Compile e instale:
Testado em CentOS 7.8.2003 para gcc 9.3 e gcc 10.1
Testado em CentOS 8.1.1911 para gcc 10.1 (pode levar mais tempo para compilar)
Resultados: gcc / g ++ 9.3.0 / 10.1.0
Instalando o gcc 7.4 (gcc 7.4.0) - lançado em 6 de dezembro de 2018 :
Baixe o arquivo: https://ftp.gnu.org/gnu/gcc/gcc-7.4.0/gcc-7.4.0.tar.gz
Compile e instale:
Resultado:
Notas:
1. Esta resposta do Stack Overflow ajudará a ver como verificar o arquivo de origem baixado.
2. Use a opção
--prefix
de instalar o gcc em outro diretório diferente do padrão. O diretório de instalação de nível superior é padronizado como / usr / local. Leia sobre as opções de instalação do gccfonte
.sig
arquivo correspondente (a assinatura pgp).make -j $(nproc)
make && make install
sem ele--prefix
? Se fizer isso, está tudo instalado no/usr/
nem mesmo/usr/local
, verifique oconfig.log
:Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info ...
Você pode usar o repositório centos-sclo-rh-testing para instalar o GCC v7 sem ter que compilá-lo para sempre, também habilite o V7 por padrão e permita que você alterne entre versões diferentes, se necessário.
fonte
/usr/lib64/libstdc++.so
arquivo para ter os símbolos mais recentes.A melhor abordagem para usar o yum e atualizar seu devtoolset é utilizar o repositório CentOS SCLo RH Testing.
Muitos pacotes adicionais também estão disponíveis, para ver todos eles
Você pode usar este método para instalar qualquer versão da ferramenta dev, apenas troque o 7 para a versão desejada. devtoolset-6-gcc, devtoolset-5-gcc etc.
fonte
Comando para instalar GCC e Ferramentas de Desenvolvimento em um servidor CentOS / RHEL 7
Digite o seguinte comando yum como usuário root:
yum group install "Ferramentas de Desenvolvimento"
OU
sudo yum group install "Ferramentas de Desenvolvimento"
Se o comando acima falhou, tente:
yum groupinstall "Ferramentas de Desenvolvimento"
fonte