Instalé una versión más nueva de devtoolset (1.1) y me preguntaba cómo haría para configurarlos de forma permanente como predeterminados. En este momento, cuando ingreso a mi servidor con CentOS, tengo que ejecutar este comandoscl enable devtoolset-1.1 bash
Intenté agregarlo a ~ / .bashrc y simplemente pegarlo en la última línea, sin éxito.

/opt/rh/devtoolset-7/enableUna alternativa de
source /opt/rh/devtoolset-4/enableesEl script de shell anterior
scl_sourcees más elegante que usar una ruta codificada (puede ser diferente en otra máquina). Sin embargo,scl_sourcehace menos porque/opt/rh/devtoolset-4/enableusascl_sourcey otras cosas.Para usarlo
scl_sourcepuede que tenga que actualizar el paquetescl-utilsCopiar y pegar rápido
Código fuente para personas curiosas
Un ejemplo de
scl_sourcecódigo fuente:https://gist.github.com/bkabrda/6435016
El
scl_sourceinstalado en mi Red Hat 7.1fuente
El problema es que
scl enable devtoolset-1.1 bashcrea un nuevo shell bash. Entonces, cuando lo pones en tu .bashrc, crea un nuevo shell ... que carga tu .bashrc, que se ejecutascl enable devtoolset-1.1 bash, que crea un nuevo shell, que carga tu .bashrc ... ¡Forkbomb!Probablemente quieras algo como esto en tu .bashrc:
o
exitdos veces.fuente
scl enable.scl enablecada vez que abro una nueva sesión ssh. Pido disculpas por estas preguntas novatas, pero no estoy seguro de cómo configurar la versión más nueva como predeterminada. ¿Hay una variable de entorno que necesito exportar en mi perfil de bash?sudo apt-get install gcc. En CentOS, esto es rico, por ejemplosudo yum install gcc.sudo yum update && sudo yum install gccy comprobaríagcc --version. Si no es 4.7, entonces probablemente deba usar devtoolset. Si no desea ejecutarlo en SCL, puede desinstalar el gcc nativo consudo yum remove gccy luego agregar el directorio devtoolset a su ruta, es decir, ponerloexport PATH=$PATH:/opt/centos/devtoolset-1.1/root/usr/binen su .bashrc. Eso le permitirá escribirgccog++y obtener el devtoolset gcc4.7.Una forma alternativa de localizar el script mencionado en otras respuestas es dejar que su administrador de paquetes le diga dónde vive.
Esto es lo que ejecutamos para extraer las herramientas dotnet en nuestras máquinas vagabundas RHEL / CentOS.
source $(rpm -ql rh-dotnet20-runtime|grep -E /enable$)fuente