Red de conocimiento informático - Material del sitio web - Cómo instalar glibc-2.15.tar

Cómo instalar glibc-2.15.tar

Pasos de compilación:

Descargar glibc-2.15.tar.gz y el paquete de parches glibc-ports-2.15.tar.gz

Descomprimir

$mv glibc-ports -2.15 glibc-2.15/ports

$mkdir glibc -build-2.15 amp;amp;cd glibc-build-2.15

$ ./glibc-2.15/configure (

--prefix=/usr/local/glibc_mips (

CC=mipsel-linux-gcc (

--host=mipsel-linux (

--build= i686-pc-linux-gnu (

--enable-add-on=nptl (

libc_cv_forced_unwind=yes (

libc_cv_c_cleanup =yes (

libc_cv_mips_ tls=yes (

libc_cv_gnu99_inline=yes (

OK, no hay problema

$make amp; amp ; make install

Gran éxito

############################## ## ########################################

Lo siguiente es mi proceso de compilación y los problemas encontrados y resueltos:

############################ ##### #######################################

$tar xvf glibc -2.16.0.tar.bz2

$cd glibc-2.16.0

$./configure--prefix=/usr/local/glibc //No hay otras opciones excepto la ruta de instalación, todo es predeterminado. Las opciones generales en línea para configurar arm son las siguientes: prefix=$HOME/usr/arm--with-headers=$HOME/usr/arm/glibc/arm-linux-glibc /. include--with-libs=$HOME/usr/arm/glibc/arm-linux-glibc/lib

Error:

configure: error: debe configurar en una compilación separada directorio

Problema extraño, tienes que configurar en un directorio de compilación separado, al principio pensé que se había creado el directorio de instalación

$mkdir /usr/local/glibc

El problema todavía existe.

/glibc-build amp; cd .../glibc-build

$.../glibc-2.16.0/configure --prefix=/usr/local/glibc

Nuevo problema:

configure: advertencia:

*** Faltan estos asistentes o hay versiones incompatibles: msgfmt

*** Algunas funciones estarán deshabilitadas.

*** Compruebe que el archivo INSTALL contenga la versión requerida.

Compruebe que la variable LD_LIBRARY_PATH... contiene el directorio actual

* Compruebe que el archivo INSTALL contenga la versión requerida. contiene el directorio actual

configure: error:

*** LD_LIBRARY_PATH no debe contener el directorio actual, cambie la variable de entorno cuando

**** compila

****Y vuelva a ejecutar configure.

No te preocupes por la primera advertencia, ¿la segunda LD_LIBRARY_PATH también provocará un error? ¿Cuántos días llevo usando este camino? Mire atentamente el mensaje, no debe contener la ruta actual. Abra ~/.bash_profile

$cat ~/.bash_profile

exportar LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib exportar LD_LIBRARY_PATH

No hay ningún archivo actual camino aquí. Visitemos Baidu.

La explicación de un hermano es la siguiente: "LD_LIBRARY_PATH no puede comenzar ni terminar con caracteres de terminal, ni pueden aparecer dos terminales consecutivamente. Mi LD_LIBRARY_PATH es: /usr/local/firefox: /usr/local /firefox, simplemente necesita exportar LD_LIBRARY_PATH:/usr/local/lib export LD_LIBRARY_PATH:/usr/local/firefox y para Firefox, simplemente anteponga una ruta para evitar que aparezca: en el primer carácter. , el primer carácter no puede ser ":", cambie ~/.bash_profile

export LD_LIBRARY_PATH=/usr/local/ lib export LD_LIBRARY_PATH

$.../glibc-2.16. 0/configure --prefix=/usr/local/glibc

Como puede ver, se generan un montón de Makefiles y otras cosas en el directorio actual

$make & make install

No hay problema.

El siguiente paso es iniciar la compilación cruzada

$mkdir ./glibc-build-mips amp; cd .../glibc-build-mips

$ ./glibc-2.16.0/configure --prefix=/usr/local/glibc_mips CC=mipsel-linux-gcc --host=mips

Nuevo problema:

configure: ejecutando el fragmento de configuración para el complemento libidn

configure: ejecutando el fragmento de configuración para el complemento nptl

**** La biblioteca GNU C aún no está disponible

****Nadie ha estado dispuesto a trasplantarlo hasta ahora, y sin voluntarios

**** es posible que nunca aparezca. Entonces, si está interesado en ver glibc en

****esta plataforma, visite

**** piler. */

# si !definido __CHAR16_TYPE__ || !definido __CHAR32_TYPE__

# si está definido __STDC_ VERSION__ amp;amp; __STDC_VERSION__ lt; ;uchar.hgt; requiere el modo ISO C11"

# else

# error "faltan definiciones de __CHAR16_TYPE__ y/o __CHAR32_TYPE__"

# endif

# endif

Entendido, resulta que requiere soporte para c11, mipsel-linux-gcc -v, el mío resulta que sí lo necesita ahora, todavía no. Solo hay dos formas de modificar la compatibilidad con c11: no utilizar esta versión de glibc o recompilar un compilador cruzado que admita c11. El compilador aún necesita más trabajo, así que cambiemos a una versión inferior por ahora.

Descargar galibc-2.15

Repita los pasos anteriores para descomprimir el paquete tar

Descomprima el paquete ports

$mv glibc-ports -2.15 glibc- 2.15/ports

$mkdir glibc-build-2.15 amp;amp;cd glibc-build-2.15

$ ./glibc-2.15/configure (

--prefix=/usr/local/glibc_mips (

CC=mipsel-linux-gcc (

--host=mipsel-linux (

-- build= i686-pc-linux-gnu (

--enable-add-on=nptl (

libc_cv_forced_unwind=yes (

libc_cv_c_cleanup =yes (

libc_cv_mips_ tls=yes (

libc_cv_gnu99_inline=yes (

OK, no hay problema

$make amp; amp; make install

p>

La biblioteca ha sido compilada, pero no puede usarla directamente. Debe volver a compilar el compilador con la nueva biblioteca

Página anterior

.