2009-01-15 13 views
28

Tenemos una nueva aplicación que requiere glibc 2.4 (de gcc 4.1). La máquina en la que corremos tiene gcc 3.4.6. No podemos actualizar, y la aplicación debe ejecutarse en esta máquina.Cómo usar múltiples versiones de GCC

Instalamos gcc 4.1, sin embargo, cuando se trata de compilar el tiempo, está utilizando todos los includes, etc, desde 3.4.6.

¿Cómo lo solucionamos?

¿Alguna sugerencia sobre el uso de 4.1 para solo esta aplicación?

Respuesta

21

Consulte "Cómo instalar múltiples versiones de GCC" here en las Preguntas frecuentes de GCC de GNU.

También hay un documento técnico here.

3

¿Has probado gcc-select? De lo contrario, intente configurar INCLUDE_PATH y LIBRARY_PATH en su caparazón.

+0

ya no lo encuentras más, ¿tienes alguna idea de si este paquete todavía existe o ha cambiado de nombre? – claf

+0

Eso suena como algo específico de distribución. Me recuerda a Gentoo o Debian, pero no estoy seguro. –

+0

gentoo specific – dave

2

Es posible que todavía ejecute el viejo gcc. Trate de hacer un enlace simbólico desde gcc a su versión de la misma, al igual que

ln -s gcc-4.1 gcc 

Cuidado con no retirar una vieja "gcc" binario colocado allí, en caso de que no se colocan justo un enlace simbólico. Si puede recompilar su propia versión de gcc, lo más seguro es usar otro prefijo en el momento de configuración de gcc, algo así como --prefix=/home/jojo/usr/gcc (lo hice de esa manera con gcc-4.4 desde svn-trunk, y funcionó muy bien).

Tenga en cuenta que eso solo ejecuta la versión correcta de gcc. Si actualiza su gcc, su glibc tampoco se actualizará automáticamente. Es un paquete separado que está profundamente acoplado con el resto del sistema. Tenga cuidado al instalar otra versión de glibc.

+0

Puede ver el resultado de ls -l para ver si el gcc en un directorio es un archivo o un enlace simbólico. –

0

para Ubuntu es bastante fácil

sudo add-apt-repository ppa:ubuntu-toolchain-r/test

sudo apt-get update

y luego instalar de ejemplo gcc versión 6

sudo apt-get install gcc-6

Cuestiones relacionadas