Red de conocimiento informático - Aprendizaje de programación - Cómo encontrar archivos de encabezado y bibliotecas lib para la compilación cruzada de gcc

Cómo encontrar archivos de encabezado y bibliotecas lib para la compilación cruzada de gcc

Esta es la información de ruta leída en la especificación.

Escriba gcc -v en la línea de comando

Lea las especificaciones de /usr/lib/gcc/i686-pc-cygwin/3.4.4/specs

Configurar:/usr/build/package/orig/test .respin/gcc-3.4.4-3/configure --ver

bose --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --libdir=/usr/lib --libe

xecdir= /usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-language

ages=c, ada, c++, d, f77, pascal, java, objc --enable-nls -- sin-gettext-incluido --

enable-version-specific-runtime-libs --sin-x --enable-libgcj --disable-java-

awt --with-system-zlib --enable-interpreter --disable-libgcj -debug --enable-thre

ads=posix --enable-java-gc=boehm --disable-win32-registry -- enable-sjlj-exdio

ns -- enable-hash-synchronization --enable-libstdcxx-debug

Modelo de hilo: posix

gcc versión 3.4.4 (cygming especial, gdc 0.12, usando dmd 0.125)

Nota "--prefix=/usr " y "--libdir=/usr/lib"

Esto significa que los archivos ejecutables como gcc ld tal como se instalan en /usr/bin y libc . a y otros archivos se instalan en /usr/lib.

El compilador cruzado también se descomprimirá en el directorio especificado por --prefix.

Por ejemplo, si descarga el compilador cruzado arm-linux cross-3.3.2.tar.bz2, ejecute arm-linux-gcc -v

y obtenga-- Después de prefix=/usr/local/arm, todas las bibliotecas bin y otros archivos y carpetas se copiarán a /usr/local/arm.

De lo contrario, si ejecuta arm-linux-gcc hello.c, recibirá un mensaje que indica que no se pueden encontrar stdio.h o lib.so.6.

Cómo utilizar. Archivo de especificación GCC

Acerca del archivo de especificación

El programa "gcc" llamado por el usuario es un conveniente archivo ejecutable del controlador front-end, que llamará a otros programas (como cc1, como o ld) para completar el trabajo de acuerdo con los parámetros de línea de comando dados.

Modificación del archivo de especificación básica

CCC generará el archivo de especificación mediante el siguiente comando:

gcc -dumpspecs > specs

Puedes use el suyo propio. Seleccione el editor de texto para verificarlo. Puede resultar confuso al principio, pero tiene muchas cosas que me gustan.

Para usar un archivo de especificaciones, use -specs= al llamar a gcc o colóquelo en "/mingw/lib/gcc/mingw32//specs" para que GCC use el archivo de forma predeterminada. El archivo aquí se refiere a la versión de GCC. .

Agregue el directorio de inclusión a la ruta de búsqueda

& #160;*cpp debe modificarse De forma predeterminada, contiene lo siguiente:

*cpp:

%{posix:-D_POSIX_SOURCE}. %{mthreads:-D_MT}

Si necesita agregar "z:\ libx\include" a la ruta de búsqueda de inclusión de GCC, debe cambiarlo al siguiente

* cpp:

%{posix:-D_POSIX_SOURCE}. %{mthreads:-D_MT}

%{posix:-D_POSIX_SOURCE}. %{mthreads:-D_MT}} mthreads:-D_MT} -I/z/libx/include

Agregar el directorio lib a la ruta de búsqueda

& #160;*link_libgcc debería ser modificado: parte. Contiene lo siguiente de forma predeterminada:

*link_libgcc:

%D

& #160;Agregue "z:\libx\lib" a GCC si es necesario ruta de búsqueda de la biblioteca, debe cambiarla a la siguiente

*link_libgcc:

%D -L/z/libx/lib