Nm - Comando Linux - Comando Unix

nm - lista símbolos de ficheiros de obxectos

SINOPSE

nm [ -a | --debug-syms ] [ -g | --external-only ]
[ -B ] [ -C | --demangle [= estilo ]] [ -D | - dinámico ]
[ -S | --print-size ] [ -s | --print-armap ]
[ -A | -o | --print-file-name ]
[ -n | -v | --numeric-sort ] [ -p | --no-sort ]
[ -r | --reverse-sort ] [ --size-sort ] [ -u | --nonfinado ]
[ -t radix | --radix = radix ] [ -P | importabilidade ]
[ --target = bfdname ] [ -f formato | --format = formato ]
[ --defined-only ] [ -l | --line-numbers ] [ --no-demangle ]
[ -V | --version ] [ -X 32_64 ] [ --help ] [ ficheiro de obxectos ...]

DESCRICIÓN

GNU nm enumera os símbolos do arquivo obxecto objfile .... Se ningún ficheiro de obxecto está listado como argumentos, nm asume o ficheiro a.out .

Para cada símbolo, nm mostra:

*

O valor do símbolo, no radio seleccionado por opcións (ver abaixo) ou hexadecimal por defecto.

*

O tipo de símbolo. Polo menos os seguintes tipos son utilizados; Outros tamén son, dependendo do formato do ficheiro de obxecto. Se en minúsculas, o símbolo é local; se en mayúscula, o símbolo é global (externo).

A

O valor do símbolo é absoluto e non se modificará con máis ligazóns.

B

O símbolo está na sección de datos non inicializada (coñecida como BSS).

C

O símbolo é común. Os símbolos comúns son datos non inicializados. Ao vincular, poden aparecer varios símbolos comúns co mesmo nome. Se o símbolo está definido en calquera lugar, os símbolos comúns son tratados como referencias non definidas.

D

O símbolo está na sección de datos inicializados.

G

O símbolo está nunha sección de datos inicializada para obxectos pequenos. Algúns formatos de ficheiro de obxecto permiten un acceso máis eficiente a pequenos obxectos de datos, como unha variable int global fronte a unha gran matriz global.

Eu

O símbolo é unha referencia indirecta a outro símbolo. Esta é unha extensión de GNU para o formato de ficheiro de obxecto a.out que raramente se usa.

N

O símbolo é un símbolo de depuración.

R

O símbolo está nunha sección de datos de só lectura.

S

O símbolo está nunha sección de datos non inicializada para obxectos pequenos.

T

O símbolo está na sección de texto (código).

U

O símbolo non está definido.

V

Un símbolo é un obxecto débil. Cando un símbolo definido débil está ligado cun símbolo normal definido, o símbolo normal definido úsase sen ningún erro. Cando un símbolo indefinido débil está ligado e o símbolo non está definido, o valor do símbolo débil faise cero sen erro.

W

O símbolo é un símbolo débil que non foi especificamente etiquetado como un símbolo de obxecto débil. Cando un símbolo definido débil está ligado cun símbolo normal definido, o símbolo normal definido úsase sen ningún erro. Cando un símbolo indefinido débil está ligado e o símbolo non está definido, o valor do símbolo débil faise cero sen erro.

-

O símbolo é un símbolo de apuñalado nun ficheiro de obxecto a.out. Neste caso, os próximos valores impresos son os apuñalados noutros campos, o campo descansar e o tipo stab. Os símbolos de Stabs empréganse para manter a información de depuración.

¿?

O tipo de símbolo descoñécese ou o formato de ficheiro de obxecto é específico.

*

O nome do símbolo.

OPCIÓNS

As formas de opcións curtas e curtas, que aquí se mostran como alternativas, son equivalentes.

-A

-o

--print-file-name

Precede cada símbolo co nome do ficheiro de entrada (ou membro do arquivo) no que se atopou, en lugar de identificar o ficheiro de entrada unha soa vez, antes de todos os seus símbolos.

-a

--debug-syms

Mostrar todos os símbolos, incluso os símbolos de depuración; Normalmente estas non están listadas.

-B

O mesmo que --format = bsd (para compatibilidade co MIPS nm ).

-C

--demanxo [= estilo ]

Decode ( demangle ) nomes de símbolos de baixo nivel en nomes de nivel de usuario. Ademais de eliminar calquera subliñado inicial predefinido polo sistema, isto fai que os nomes de funcións de C ++ sexan lexibles. Os diferentes compiladores teñen diferentes estilos de mangle. O argumento de estilo demangling opcional pódese empregar para escoller un estilo demangling apropiado para o seu compilador.

--no-demangle

Non demangle nomes de símbolos de baixo nivel. Este é o predeterminado.

-D

- dinámico

Mostrar os símbolos dinámicos en lugar dos símbolos normais. Isto só é significativo para obxectos dinámicos, como certos tipos de bibliotecas compartidas.

-f formato

--format = formato

Use o formato de formato de saída, que pode ser "bsd", "sysv" ou "posix". O valor predeterminado é "bsd". Só o primeiro carácter de formato é significativo; pode ser superior ou inferior.

-g

--external-only

Mostrar só símbolos externos.

-l

- line-numbers

Para cada símbolo, usa información de depuración para intentar atopar un nome de ficheiro e un número de liña. Para un símbolo definido, busque o número de liña da dirección do símbolo. Para un símbolo indefinido, busque o número de liña dunha entrada de reubicación que se refire ao símbolo. Se se pode atopar información de números de liña, impríbeo despois da outra información de símbolo.

-n

-v

--numeric-sort

Ordene os símbolos numéricamente polos seus enderezos, en lugar de alfabéticamente polos seus nomes.

-p

--no-sort

Non se moleste en ordenar os símbolos en calquera orde; impríbeos na orde que atopou.

-P

Aportabilidade

Use o formato de saída estándar POSIX.2 en vez do formato predeterminado. Equivalente a -f posix .

-S

- tamaño de impresión

Tamaño de impresión de símbolos definidos para o formato de saída "bsd".

-s

--print-armap

Ao indicar os símbolos dos membros do arquivo, inclúese o índice: un mapeamento (almacenado no arquivo por ar ou ranlib ) dos cales os módulos conteñen definicións para cales son os nomes.

-r

--reverse-sort

Inverte a orde do xénero (xa sexa numérico ou alfabético); deixe o último en primeiro lugar.

--size-sort

Ordene os símbolos por tamaño. O tamaño compútase como a diferenza entre o valor do símbolo eo valor do símbolo co seguinte valor superior. O tamaño do símbolo está impreso, en lugar do valor.

-t radix

--radix = radix

Use radix como radix para imprimir os valores de símbolos. Debe ser d para decimal, o para octal, ou x para hexadecimal.

--target = bfdname

Especifique un formato de código de obxecto que non sexa o formato predeterminado do seu sistema.

-u

--sófilo só

Mostrar só símbolos non definidos (aqueles externos a cada ficheiro de obxecto).

--defined-only

Mostrar só os símbolos definidos para cada ficheiro de obxecto.

-V

--versión

Mostrar o número de versión de nm e saír.

-X

Esta opción é ignorada por compatibilidade coa versión AIX de nm . Leva un parámetro que debe ser a cadea 32_64 . O modo predeterminado de AIX nm corresponde a -X 32 , que non é compatible con GNU nm .

- axuda

Mostrar un resumo das opcións a nm e saír.

VER TAMÉN

ar (1), objdump (1), ranlib (1) e as entradas de información para binutils .

Importante: use o comando man ( % home ) para ver como se usa un comando na súa computadora particular.