in

¿Qué son los términos «entrometidos», «nano», «rdimon» cuando se usa ARM GCC?

apple touch icon@2

Usos de gcc especificaciones-cadenas, que controlan qué subprocesos ejecutar y qué parámetros les pasará. El comportamiento definido por el cadenas de especificaciones se puede anular usando archivos de especificaciones, cuyo propósito y sintaxis se documenta aquí: https://gcc.gnu.org/onlinedocs/gcc/Spec-Files.html

Mirando estos archivos de especificaciones en la carpeta lib de la cadena de herramientas gcc (p. Ej. /usr/lib/arm-none-eabi/lib) podemos ver que los archivos de especificaciones mencionados definen qué biblioteca estándar utilizará el enlazador.

Por ejemplo, nosys.specs simplemente define que las llamadas al sistema deben implementarse como stubs que devuelven errores cuando se llaman (-lnosys). La elección de libc en este caso depende de si nano debería ser usado. Con %G los libgcc spec-string se procesa, que define los parámetros pasados ​​al enlazador.

nosys.specs:

%rename link_gcc_c_sequence                nosys_link_gcc_c_sequence

*nosys_libgloss:
-lnosys

*nosys_libc:
%{!specs=nano.specs:-lc} %{specs=nano.specs:-lc_nano}

*link_gcc_c_sequence:
%(nosys_link_gcc_c_sequence) --start-group %G %(nosys_libc) %(nosys_libgloss) --end-group

nano.specs define el sistema incluye la ruta y los parámetros de la biblioteca a utilizar newlib-nano. El archivo de especificaciones contiene reemplazos para -lc y otros a nanoequivalentes, p. ej. -lc_nano. Por lo tanto, usarlo junto con estos hará que gcc aún pase nano bibliotecas al enlazador.

Utilizando rdimon.specs, -lrdimon se pasa como el libgloss parte de la biblioteca estándar. Esto básicamente significa que puede usar llamadas al sistema (y también printf), pero esto depende de que se adjunte un depurador, y la CPU puede fallar si no hay un depurador presente.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

payroll processing

Metodologías de programación – Introducción

CMtVNFczBAEfRXcZbS2woD 1200 80

Cómo ganar Prime Engrams en Destiny 2: Forsaken y obtener ese botín de nivel superior