Utilice «nm» para listar símbolos de archivos de objetos.
SINOPSIS
nm [ -a | –debug-syms ] [ -g | –extern-only ]]
.[ -B ] [ -C | –demangle [= style] [ -D | –dynamic ]
]. -S | –tamaño de impresión ] [ -s | –print-armap ]
-A | -o | –print-file-name ]
[ -n | -v | –numeric-sort ] [ -p | –no-sort
-r | –reverse-sort ] [ –sizee-sort ] [ -u | –indefined-only ]
>.[ -t radix| –radix= radix] [ -P | –portabilidad []
].[ –target= bfdname] [ -f format| –format= format]
–sólo definido ] [ -l | –números de línea ] [ –no-demangle ]
].[ -V | –versión ] [ -X 32_64 ] [ –help [ objfile…]
DESCRIPCIÓN
GNU nm lista los símbolos de los archivos de objetos objfile…. Si no hay ningún fichero objeto listado como argumentos, nm asume el fichero a.out.
Para cada símbolo, nm aparece:
*
El valor del símbolo, en el radio seleccionado por las opciones (ver abajo), o hexadecimal por defecto.
*
El tipo de símbolo. Al menos se utilizan los siguientes tipos; otros también, dependiendo del formato de archivo del objeto. Si es minúscula, el símbolo es local; si es mayúscula, el símbolo es global (externo).
A
El valor del símbolo es absoluto y no se modificará mediante un enlace posterior.
B
El símbolo se encuentra en la sección de datos no inicializados (conocida como BSS).
C
El símbolo es común. Los símbolos comunes son datos no inicializados. Al enlazar, pueden aparecer varios símbolos comunes con el mismo nombre. Si el símbolo se define en cualquier parte, los símbolos comunes se tratan como referencias no definidas.
D
El símbolo se encuentra en la sección de datos inicializados.
G
El símbolo se encuentra en una sección de datos inicializados para objetos pequeños. Algunos formatos de archivo de objetos permiten un acceso más eficiente a pequeños objetos de datos, como una variable int global en lugar de una matriz global grande.
I
El símbolo es una referencia indirecta a otro símbolo. Esta es una extensión de GNU al formato de archivo de objeto a.out que es raramente usado.
N
El símbolo es un símbolo de depuración.
R
El símbolo se encuentra en una sección de datos de sólo lectura.
S
El símbolo se encuentra en una sección de datos no inicializada para objetos pequeños.
T
El símbolo está en la sección de texto (código).
U
El símbolo no está definido.
V
Un símbolo es un objeto débil. Cuando un símbolo débilmente definido se enlaza con un símbolo normal definido, se utiliza el símbolo normal definido sin ningún error. Cuando se enlaza un símbolo débil no definido y el símbolo no está definido, el valor del símbolo débil se convierte en cero sin ningún error.
W
El símbolo es un símbolo débil que no se ha etiquetado específicamente como un símbolo de objeto débil. Cuando un símbolo débilmente definido se enlaza con un símbolo normal definido, se utiliza el símbolo normal definido sin ningún error. Cuando se enlaza un símbolo débil no definido y el símbolo no está definido, el valor del símbolo débil se convierte en cero sin ningún error.
–
El símbolo es un símbolo de puñaladas en un archivo de objeto.out. En este caso, los siguientes valores impresos son las puñaladas de otros campos, el campo de descenso de puñaladas y el tipo de puñalada. Los símbolos de puñaladas se utilizan para mantener la información de depuración.
?
El tipo de símbolo es desconocido o el formato de archivo del objeto es específico.
*
El nombre del símbolo.
OPCIONES
Las formas largas y cortas de opciones, mostradas aquí como alternativas, son equivalentes.
-A
-o
–imprimir-nombre-archivo
Preceda a cada símbolo por el nombre del archivo de entrada (o miembro del archivo) en el que se encontró, en lugar de identificar el archivo de entrada una sola vez, antes de todos sus símbolos.
-a
–debug-syms
Mostrar todos los símbolos, incluso los símbolos de sólo depuración; normalmente no aparecen en la lista.
-B
Lo mismo que –format=bsd (para compatibilidad con el MIPS nm ).
-C
–demangle[= style ]
Decodificar ( demangle) nombres de símbolos de bajo nivel en nombres de nivel de usuario. Además de eliminar cualquier subrayado inicial preparado por el sistema, esto hace que los nombres de las funciones C++ sean legibles. Diferentes compiladores tienen diferentes estilos de manipulación. El argumento opcional Demangling style se puede utilizar para elegir un estilo Demangling apropiado para su compilador.
–no-demangle
No demande los nombres de los símbolos de nivel inferior. Este es el valor por defecto.
-D
–dinámico
Mostrar los símbolos dinámicos en lugar de los símbolos normales. Esto sólo tiene sentido para objetos dinámicos, como ciertos tipos de bibliotecas compartidas.
-f formato
–format= format
Utilice el formato de salida format, que puede ser «bsd», «sysv» o «posix». El valor por defecto es «bsd». Sólo el primer carácter de format es significativo; puede ser mayúsculas o minúsculas.
-g
–extern-only
Visualizar sólo símbolos externos.
-l
–números de línea
Para cada símbolo, utilice la información de depuración para intentar encontrar un nombre de archivo y un número de línea. Para un símbolo definido, busque el número de línea de la dirección del símbolo. Para un símbolo indefinido, busque el número de línea de una entrada de reubicación que se refiera al símbolo. Si se puede encontrar información sobre el número de línea, imprímala después de la otra información sobre el símbolo.
-n
-v
–numérico-sort
Ordene los símbolos numéricamente por sus direcciones, en lugar de alfabéticamente por sus nombres.
-p
–no-sort
No se moleste en ordenar los símbolos en cualquier orden; imprímalos en el orden en que se encuentran.
-P
–portabilidad
Utilice el formato de salida estándar POSIX.2 en lugar del formato predeterminado. Equivalente a -f posix .
-S
–tamaño de impresión
Tamaño de impresión de los símbolos definidos para el formato de salida «bsd».
-s
–print-armap
Al enumerar símbolos de los miembros del archivo, incluya el índice: una asignación (almacenada en el archivo por ar o ranlib ) de los cuales los módulos contienen definiciones de los nombres.
-r
–reverse-sort
Invierta el orden del orden (ya sea numérico o alfabético); deje que lo último venga primero.
–sizee-sort
Ordenar los símbolos por tamaño. El tamaño se calcula como la diferencia entre el valor del símbolo y el valor del símbolo con el valor inmediatamente superior. Se imprime el tamaño del símbolo en lugar del valor.
-t radix
–radix= radix
Utilice radix como radix para imprimir los valores de los símbolos. Debe ser d para decimal, o para octal, o x para hexadecimal.
–target= bfdname
Especifique un formato de código de objeto que no sea el formato predeterminado del sistema.
-u
–únicamente indefinido
Mostrar sólo símbolos no definidos (los externos a cada archivo de objeto).
–sólo definida
Visualizar sólo los símbolos definidos para