2011-05-06 9 views
5

Estoy intentando construir GCC 4.6 bajo CentOS versión 5.5 (final). Recientemente he construido GMP-5.0.1, MPC-0.9 y MPFR-3.0.1, y he utilizado el siguiente comando de configuración:Building GCC 4.6 - libmpfr.so.4 - no se puede abrir el archivo de objeto compartido

../configure --prefix =/users/xxxx/apps/mygcc4.6 - checking-disable - enable-threads = posix --enable-languages ​​= c, C++, fortran --with-mpfr =/users/xxxx/code/gcc/mpfr-3.0.1-install-cyprus --with-gmp =/users/xxxx/code/gcc/gmp-5.0.1-install-cyprus --with-mpc =/users/xxxx/code/gcc/mpc-0.9-install-cyprus

Después de esto, ejecuto make y después de aproximadamente 5 minutos aparece el siguiente mensaje de error:

buscando el sufijo de archivos de objeto ... configure: error: en /users/xxxx/code/gcc/gcc-4.6.0/obj/x86_64-unknown-linux-gnu/libgcc': configure: error: cannot compute suffix of object files: cannot compile See config.log 'para más detalles.

El config.log indica que un programa recientemente generada (CC1) participa:

/users/xxxx/code/gcc/gcc-4.6.0/obj/./gcc/cc1

de hecho si me quedo este programa sin argumentos me sale el mismo mensaje de error que se encuentra en config.log:

error al cargar las bibliotecas compartidas: libmpfr.so.4: no se puede abrir el archivo objeto compartido: no existe el fichero o directorio

Sin embargo, libmpfr.so.4 está en el subdirectorio lib del que se proporciona para configurar utilizando el distintivo --with-mpfr, como se ve arriba. Tengo LD_LIBRARY_PATH y LIBRARY_PATH vacíos. ¿Alguna idea de cómo puedo superar este error?

Respuesta

5

Asegúrate de que tu biblioteca esté efectivamente en el directorio indicado y no en algún subdirectorio lib. Use export LD_LIBRARY_PATH=/users/xxxx/code/gcc/mpfr-3.0.1-install-cyprus como ya ha sugerido ;-)

+0

Gracias. Había intentado configurar 'LD_LIBRARY_PATH', pero accidentalmente no en el subdirectorio lib. Ok, parece que gmp también debería estar allí, así que intentaré ahora con los tres ... – user2023370

+0

Funcionó: 'export LD_LIBRARY_PATH =/users/xxxx/code/gcc/mpfr-3.0.1-install-cyprus/lib: /users/xxxx/code/gcc/gmp-5.0.1-install-cyprus/lib:/users/xxxx/code/gcc/mpc-0.9-install-cyprus/lib' – user2023370

3

Sé que este hilo está bastante desactualizado. Pero tuve que comentar y decir que después de más de 5 horas golpear mi cabeza contra la pared en un problema muy similar (verificar el sufijo de los archivos de objeto ... configurar: error: no se puede calcular el sufijo de los archivos de objeto: no se puede compilar) y Después de leer el manual de instalación, una multitud de foros y probar varias cosas en el sistema en cuestión, encontré esta publicación breve pero muy útil. El problema estaba relacionado precisamente con LD_LIBRARY_PATH. Para abreviar, al construir desde la fuente, si tocas esta pared, exporta la variable LD_LIBRARY_PATH para que apunte al directorio de compilación fuente de las libs. Funcionó para mí de todos modos.

Buena suerte amigos.

Cuestiones relacionadas