Entender el comando Linux/Unix: nm

Entender el comando Linux/Unix: nm

Entender el comando Linux/Unix: nm

VALORACIÓN DEL ARTÍCULO:
5/5


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

TAMBIÉN TE INTERESA

simulador-de-bodas

¿Te casas? La IA y DeWeed pueden ayudarte en la planificación de tu boda

La planificación de una boda es un proceso emocionante pero a menudo abrumador. Desde la selección del lugar perfecto hasta la elección del vestido ideal, hay innumerables decisiones que tomar para que todo salga según lo planeado en el gran día. Tradicionalmente, esta tarea ha supuesto muchos quebraderos de cabeza para los novios. Una vez

Freepik-Reimagine

La mutación de Freepik con la inteligencia artificial

Si alguna vez has buscado un banco de imágenes en internet para crear tus contenidos, seguramente habrás dado con Freepik, una plataforma líder a nivel mundial en el desarrollo de herramientas creativas y la distribución de contenidos gráficos y audiovisuales. Por si no lo sabías se trata de un proyecto made in Spain que fue

estafas-vacacionales

¡Ojo con las estafas vacacionales en vísperas de Semana Santa!

Cada puente o periodo de vacaciones, surgen todo tipo de estafas vacacionales. Al margen de una enfermedad, lo peor que le puede pasar a una persona es que le arruinen sus vacaciones. Fraudes siempre ha habido, de todo tipo, pero ahora que todo lo gestionamos de manera digital, las trampas se han multiplicado. Cabe recordar

Zenfone-11-Ultra

Zenfone 11 Ultra, que siga la fiesta de la IA en los smartphones

Todos los últimos lanzamientos de smartphones están marcados por la inteligencia artificial. Este hecho, que ocupa los titulares de hoy, se está convirtiendo en un estándar y pronto dejará de ser noticia. Pero no estos momentos es la novedad y la transformación hacia la que caminan todas las marcas del mercado. Así lo ha hecho

Enco-Buds2-Pro

Enco Buds2 Pro: unos auriculares buenos, bonitos, baratos e inteligentes

Por menos de 50 euros, los auriculares OPPO Enco Buds2 Pro pueden darnos todo lo que necesitamos para nuestro día a día. ¿Por qué? Porque son una combinación excepcional de calidad de sonido, duración de batería extendida y un diseño moderno y funcional. Además cuentan con funciones inteligentes y dan a los usuarios la libertad