Red de conocimiento informático - Material del sitio web - Cómo construir una cadena de herramientas de compilación cruzada MIPS

Cómo construir una cadena de herramientas de compilación cruzada MIPS

Paso 1 Crear directorios y variables de entorno

Cree la carpeta del proyecto de destino en el directorio de usuario actual, cree la carpeta mips-module en esta carpeta y cree tres archivos en la carpeta mips-module Carpetas: build- tools, kernel y tools, y finalmente cree las carpetas build-gcc, build-boot-gcc, build-glibc y build-binutils en la carpeta build-tools. El comando es el siguiente:

$ cd ~

$ mkdir -p ./target-project/mips-module/{kernel/,tools/,build-tools/{build -gcc, build-boot-gcc,build-glibc,build-binutils}}

$ tree ./target-project/mips-module/

Usar script para crear variables de entorno

#!

$ cd target-project

$ chmod +x mips.sh

$ source mips.sh

Puedes usar echo para ver Si la variable de entorno surte efecto.

Finalmente, descargue linux-2.6.38.tar.bz2 y colóquelo en la carpeta del kernel, binutils-2.22.tar.gz, gcc-4.6.2.tar.gz, glibc-2.14. .gz, glibc-ports-2.14.tar.gz, gmp-5.0.4.tar.gz, gcc-2.6.4.tar.gz y gmp-5.0.4.tar.gz. Las descargas de 5.0.4.tar.gz, mpc-0.9.tar.gz y mpfr-3.0.1.tar.gz se colocan en la carpeta build-tools.

Paso 2 Instalar archivos de encabezado de Linux basados ​​en MIPS

$ cd $PRJROOT/kernel

$ tar -xjvf linux-2.6.38.tar.bz2

$ cd linux-2.6.38

Crea una carpeta de inclusión en la ruta especificada.

$ mkdir -p $TARGET_PREFIX/include

Asegúrese de que el código fuente de Linux esté limpio.

$ make mrproper

Genera los archivos de encabezado necesarios.

$ make ARCH=mips headers_check

$ make ARCH=mips INSTALL_HDR_PATH=dest headers_install

Copie todos los archivos en la carpeta de destino a la carpeta de archivos de inclusión especificada.

$ cp -rv dest/include/* $TARGET_PREFIX/include

Finalmente elimina la carpeta de destino

$ rm -rf dest

$ ls -l $TARGET_PREFIX/include

Paso 3 Instalar binutils-2.22

$ cd $PRJROOT/build-tools

$ tar -xzvf binutils- 2.22.tar.gz

$ cd build-binutils

$ ./binutils-2.22/configure --target=$TARGET --prefix=$PREFIX

$ make

$ make install

Luego instale automake.

$ tar -xzvf automake -1.11.1.tar.gz

$ cd automake-1.11.1

$ ./configure

$ make

$ sudo make install

El siguiente es el inicio de la modificación El método para archivos relacionados es principalmente eliminar -Werror.

$ cd $PRJROOT/build-tools/binutils-2.22/gas

$ ge dit configure

Ingrese el siguiente contenido

# -Werror está habilitado de forma predeterminada cuando se usa gcc

if test "${GCC}" = yes -a -z "${ ERROR_ON_WARNING}" ; entonces

ERROR_ON_WARNING=yes

fi

Modificar a

# Habilitado de forma predeterminada cuando se usa gcc - Werror

if prueba "${GCC}" = yes -a -z "${ERROR_ON_ WARNING}" ; entonces

ERROR_ON_WARNING=no

fi

Sin embargo , es necesario reconfigurar para generar el Makefile.

$ ./configure (configurar en la ruta binutils/gas)

$ make distclean (recuerde)

Luego vuelva a ejecutar el paso 3 y compile esta vez. aprobar.

Paso 4 Instalar el gestor de arranque gcc

$ cd $PRJROOT/build-tools

$ tar -xzvf gcc-4.6.2.tar.gz

p>

$ tar -xjvf gmp-5.0.4.tar.bz2

$ mv gmp-5.0 .4 ./gcc-4.6.2/gmp

$ tar -xzvf mpc-0.9.tar.gz

$ mv mpc-0.9 ./gcc-4.6.2/mpc

$ tar -xzvf mpfr-3.0.1.tar.

$ mv mpfr-3.0.1 ./gcc-4.6.2/mpfr

$ cd build-boot-gcc

$ ./gcc- 4.6 .2/configure --target=$TARGET --prefix=$PREFIX --disable-shared
--sin-encabezados --with-newlib --enable-languages=c -- enable-decimal-float < ; br>--disable-libgomp--disable-libmudflap--disable-libssp--disable-threads--disable-multilib

Compile e instale el cargador de arranque gcc y la biblioteca libgcc.

$ make all-gcc

$ make all-target-libgcc

$ make install-gcc

$ make install-target -libgcc

Paso 5 Compilar glibc

$ cd $PRJROOT/build-tools

$ tar xzvf glibc-2.14.tar.gz

$ cd glibc-2.14

Eliminar archivo Makefonfig-lgcc_eh.

$ cp -v Makeconfig {,.b salpicadura intestinal detención trabajo bola de masa oficina malvada tormenta lanza k}

$ sed -e 's/-lgcc_eh//g' Makeconfig.bk > Makeconfig

$ cd ...

$ tar -xjvf glibc-ports- 2.14 .tar.bz2

$ mv glibc-ports-2.14 ./glibc-2.14/ports

$ cd build-glibc

$ CC=mipsellinux --gcc ./glibc-2.14/configure --host=$TARGET --prefix="/usr"
-enable-add-ons--with-headers=$TARGET_PREFIX/include libc_cv_forced_ unwind=yes
libc_cv_c_cleanup=yes

Nota: En este momento, cómo configurar la variable de entorno LD_LIBRARY_PATH provocará un error de configuración y deberá eliminar la variable y reconfigurarla.

$ make

$ make install_root=$TARGET_PREFIX prefix="" install

Paso 6 Instale completamente gcc

Primero, también A Un paso muy importante es eliminar las rutas absolutas de los archivos de la biblioteca (como libc).

$ cd $TARGET_PREFIX/lib

Copia de seguridad.

$ cp libc.so libc.so.bk

$ gedit libc.so

GRUPO ( /lib/libc.so.6 /lib/libc_nonshared .a AS_NEEDED ( /lib/ld.so.1 ) )

Modificar a

GRUPO ( libc.so.6 libc_nonshared.a AS_NEEDED ( ld.so.1 ) )

$ cp libpthread.so libpthread.so.bk

$ gedit libpthread./lib/libpthread_nonshared.a)

Cambiar a

GRUPO (libpthread.so.0 libpthread_nonshared.a)

Entonces gcc se puede compilar completamente.

上篇: ¿Cómo controlar el calcio libre en el clinker? 1. La importancia de controlar el óxido de calcio libre en el clinker (x0d\x0d\ Todas las empresas dedicadas a la producción de cemento son conscientes de que el óxido de calcio libre en el clinker es un indicador importante relacionado con la calidad del cemento. Esto demuestra que El grado de combinación del óxido de calcio con sílice, alúmina y óxido de hierro en la harina cruda calcinada afecta directamente a la estabilidad del cemento y a la resistencia del clinker. Sin embargo, esto no es el rendimiento final del cemento, sino sólo la realización. del producto Condiciones necesarias para el rendimiento de uso final \x0d\\\\x0d\1. De hecho, existen algunos entendimientos inexactos o incluso malentendidos sobre el control de este indicador: \1) Se cree que el clinker tiene óxido de calcio libre. menor el contenido, mejor, porque significa que la calcinación está completa y la calidad del clinker es la mejor (2) Mientras el óxido de calcio libre de clinker sea alto, significa que los operadores de control central no han cumplido con sus responsabilidades; por lo que los indicadores de evaluación solo están vinculados a ellos;\x0d\\x0d\(3) La supresión del contenido de óxido de calcio libre se considera un indicador difícil de comprender, por lo que este indicador se considera el requisito de calidad más importante para la evaluación. operadores. \x0d\\\\\x0d\2. Es necesario aclarar estos malentendidos de la siguiente manera: (1) El contenido de óxido de calcio libre es sólo un indicador del proceso del uso del cemento, no el indicador final. Debido a que la pequeña cantidad de óxido de calcio libre que queda en el clinker se puede disipar durante todo el proceso de uso después de ingresar al cemento, no es necesario fabricar clinker en el horno con un contenido de óxido de calcio libre muy bajo, sino que se deben realizar más esfuerzos. hecho para encontrar la mejor solución. Los ingredientes relevantes y los parámetros operativos que son adecuados para la empresa y son beneficiosos para la resistencia del clinker son la base de la eficiencia de la empresa. \2) Para los calcinadores fuera del horno, el control del calcio libre de clinker es mucho más fácil que en los hornos verticales y los hornos rotativos tradicionales, por lo que no debería convertirse en una dificultad en el control de la producción. Por lo tanto, las empresas no deben permitir que los operadores de control central busquen ciegamente la tasa de calificación y el contenido absoluto de óxido de calcio libre sin considerar otros indicadores, ni deben aumentar el consumo de calor a toda costa y suprimir infinitamente el contenido de óxido de calcio libre; \x0d\\x0d\3. Las causas y clasificación del óxido de calcio libre (1) Óxido de calcio libre ligeramente quemado (debido a volumen de alimentación inestable o colapso, descamación de la piel, cambios en la composición del combustible en el horno o mala forma de la llama, algunos Incluso la temperatura de calcinación de las materias primas locales no es suficiente, y el óxido de calcio libre se forma a una temperatura baja de 1100 a 1200 °C. Existe principalmente en polvo amarillo y clínker tipo sándwich envuelto con polvo de harina cruda. estabilidad del cemento, pero dañará el cemento. Reducirá la resistencia del clinker. \(2) Óxido de calcio libre primario: se producen cuando la dosis de óxido de calcio es demasiado alta, la materia prima es demasiado gruesa o la calcinación es incorrecta. pobre, y el clinker todavía existe sin SiO2, Al2O3, Fe2O3, es CaO que sufre reacciones químicas. Estos CaOs calcinados a altas temperaturas se encuentran en un "estado de quemado muerto" con estructuras densas y cristales más grandes (los cristales de clinker están en un "). "Estado quemado muerto" después de calcinaciones a alta temperatura, con estructuras densas y cristales grandes (10-20 μm), se forma muy lentamente al entrar en contacto con el agua, y la reacción suele tardar tres días en hacerse evidente, provocando que el cemento se endurezca. endurezca y el volumen de la fase sólida se expanda (97,9%), formando una tensión de expansión local dentro de la piedra de cemento, provocando que se deforme o se agriete \(3) Óxido de calcio libre secundario cuando el clinker recién cocido se enfría lentamente o está adentro. En una atmósfera reductora, el C3S se descompondrá y se convertirá nuevamente en óxido de calcio y C2S, o el álcali del clinker será reemplazado. El óxido de calcio en C3S y C3A se vuelve a liberar, por lo que se llama óxido de calcio libre secundario. se hidrata lentamente y tiene un cierto impacto en la resistencia y estabilidad del cemento. Por lo tanto, las contramedidas tomadas cuando se genera un alto nivel de óxido de calcio libre no se pueden generalizar entre todas las razones del alto nivel de óxido de calcio libre, solo el asentamiento del material es exclusivo. El horno precalentador debe superarse y puede superarse por completo. Por el contrario, el horno de calcinación cuenta con instalaciones de homogeneización de materia prima, sistema de precalentamiento ciclónico, alta velocidad del horno y tuberías de carbón de tres vías y otras técnicas. medidas, su capacidad para controlar el óxido de calcio libre es mucho mayor que la de otros hornos. El bajo óxido de calcio libre del clinker calcinado es su ventaja. Al mismo tiempo, debe quedar claro que el operador de control central controla el contenido de calcio libre. óxido. Los únicos medios son la forma de la llama y la temperatura de calcinación. 下篇: Cómo abrir un archivo con el sufijo cod