Me gustaría instalar devtools en un clúster que ejecuta CentOS 5.4 (para obtener una versión superior de gcc a la predeterminada. Necesito gcc>4.7 para usar algunas funciones de C++11)
Sin embargo, no tengo permiso de root. ¿Es posible instalar devtools en la carpeta de inicio de mi usuario, sin acceso de root? Los pasos dados enesteLa respuesta supone que el acceso de root está disponible. Gracias por cualquier información o enlace.
Respuesta1
Sí, ciertamente. Pero hay algunas cosas a tener en cuenta.
Debes compilar desde la fuente y darle un prefijo a tu directorio de inicio:
./configure --prefix=$HOME
Por supuesto, agregue parámetros según sea necesario. make install
luego se instalará en /home/yourdir/bin, /home/yourdir/lib, etc. Es posible que necesite ejecutar 'ldconfig' manualmente en su directorio lib para crear enlaces simbólicos abreviados a sus bibliotecas.
En su entorno de shell, agregue primero la ruta a su directorio personal 'bin', si aún no lo ha hecho. Por ejemplo, agregue esto a su .bashrc:
PATH=$HOME/bin:$PATH
LD_LIBRARY_PATH=$HOME/lib:$LD_LIBRARY_PATH
export PATH LD_LIBRARY_PATH
Esto asegurará que su propia copia de gcc se encuentre primero; LD_LIBRARY_PATH hace lo mismo con sus propias bibliotecas dinámicas.
Tenga en cuenta que las versiones más nuevas de gcc pueden requerir versiones más nuevas de binutils, el ensamblador y varias bibliotecas, por lo que puede terminar con mucho más que solo gcc. Además, creo que se recomienda compilar primero solo el compilador de C (con --enable-languages=C), luego recompilar gcc consigo mismo para compilar el compilador de C++.
Finalmente, lo anterior puede interferir con las bibliotecas C++ existentes del sistema; En el pasado he tenido problemas al vincular bibliotecas de C++ compiladas por diferentes versiones de gcc en mis programas. Las bibliotecas C normalmente no tienen este problema.
Respuesta2
No creo que puedas actualizar GCC si no eres root. Intente descargar el rpm e instalarlo, pero las posibilidades son muy pocas.