Nm - Comando de Linux - Comando Unix

nm - llista símbols dels fitxers d'objectes

SINOPSI

nm [ -a | --debug-syms ] [ -g | --extern-només ]
[ -B ] [ -C | --demangle [= style ]] [ -D | - dinàmica ]
[ -S | --print-size ] [ -s | --print-armap ]
[ -A | -o | --print-file-name ]
[ -n | -v | --numeric-sort ] [ -p | --no-sort ]
[ -r | --reverse-sort ] [ --size-sort ] [ -u | - sense afinar-només ]
[ -t radix | --radix = radix ] [ -P | importabilitat ]
[ --target = bfdname ] [ -f format | - format = format ]
[ --defined-only ] [ -l | --line-numbers ] [ --no-demangle ]
[ -V | --version ] [ -X 32_64 ] [ --help ] [ fitxer d'objectes ...]

DESCRIPCIÓ

GNU nm enumera els símbols dels arxius d'objectes objfile .... Si no hi ha cap fitxer d'objectes enumerats com a arguments, nm assumeix el fitxer a.out .

Per a cada símbol, nm mostra:

*

El valor del símbol, al radi seleccionat per les opcions (vegeu més avall) o hexadecimal per defecte.

*

El tipus de símbol. Almenys s'utilitzen els següents tipus; D'altres, també, depenen del format del fitxer d'objectes. Si en minúscules, el símbol és local; si en majúscula, el símbol és global (extern).

A

El valor del símbol és absolut i no es modificarà si es vinculi més.

B

El símbol es troba a la secció de dades no inicialitzada (coneguda com a BSS).

C

El símbol és comú. Els símbols comuns són dades no inicialitzades. En enllaçar, es poden mostrar diversos símbols comuns amb el mateix nom. Si el símbol es defineix en qualsevol lloc, els símbols comuns es tracten com referències no definides.

D

El símbol es troba a la secció de dades inicialitzades.

G

El símbol es troba en una secció de dades inicialitzada per a objectes petits. Alguns formats de fitxer d'objectes permeten un accés més eficient a petits objectes de dades, com ara una variable d'int global enfront d'una àmplia gamma global.

Jo

El símbol és una referència indirecta a un altre símbol. Aquesta és una extensió de GNU al format d'arxiu d'objectes a.out que poques vegades s'utilitza.

N

El símbol és un símbol de depuració.

R

El símbol es troba en una secció de dades de només lectura.

S

El símbol es troba en una secció de dades no inicialitzada per a objectes petits.

T

El símbol està a la secció de text (codi).

U

El símbol no està definit.

V

Un símbol és un objecte feble. Quan un símbol definit feble està enllaçat amb un símbol normal definit, s'utilitza el símbol normal definit sense cap error. Quan un símbol indefinit feble està enllaçat i el símbol no està definit, el valor del símbol feble es converteix en zero sense cap error.

W

El símbol és un símbol feble que no s'ha etiquetat específicament com a símbol d'objecte feble. Quan un símbol definit feble està enllaçat amb un símbol normal definit, s'utilitza el símbol normal definit sense cap error. Quan un símbol indefinit feble està enllaçat i el símbol no està definit, el valor del símbol feble es converteix en zero sense cap error.

-

El símbol és un símbol d'equilibri en un fitxer d'objectes a.out. En aquest cas, els propers valors impresos són els altres camps d'apostes, el camp d'apostes i el tipus d'apilament. Els símbols stabs s'utilitzen per mantenir la informació de depuració.

?

El tipus de símbol és desconegut o el format del fitxer d'objectes específic.

*

El nom del símbol.

OPCIONS

Les formes llargues i curtes d'opcions, que es mostren aquí com a alternatives, són equivalents.

-A

-o

--print-file-name

Precedeix cada símbol pel nom del fitxer d'entrada (o membre de l'arxiu) en el qual es va trobar, en comptes d'identificar el fitxer d'entrada una vegada només, abans de tots els seus símbols.

-a

--debug-syms

Mostra tots els símbols, fins i tot símbols de depuració; Normalment aquestes no figuren.

-B

Igual que --format = bsd (per compatibilitat amb el MIPS nm ).

-C

--demanxe [= estil ]

Decode ( demangle ) noms de símbols de baix nivell en noms de nivell d'usuari. A més d'eliminar qualsevol subratllat inicial preestablert pel sistema, això fa que els noms de la funció de C + + puguin llegir-se. Els diferents compiladors tenen diferents estils de mangle. L'argument opcional d'estil diferenciador es pot utilitzar per triar un estil demangling adequat per al vostre compilador.

--no-demangle

No demangle noms de símbols de baix nivell. Aquest és el valor predeterminat.

-D

--dinàmica

Mostra els símbols dinàmics en lloc dels símbols normals. Això només és significatiu per als objectes dinàmics, com ara certs tipus de biblioteques compartides.

-f format

- format = format

Utilitzeu el format de format de sortida, que pot ser "bsd", "sysv" o "posix". El valor predeterminat és "bsd". Només el primer caràcter de format és important; pot ser superior o inferior.

-g

--extern-only

Mostra només símbols externs.

-l

- line-numbers

Per a cada símbol, utilitzeu la informació de depuració per intentar trobar un nom de fitxer i un número de línia. Per obtenir un símbol definit, busqueu el número de línia de l'adreça del símbol. Per obtenir un símbol indefinit, busqueu el número de línia d'una entrada de reubicació que fa referència al símbol. Si es pot trobar la informació del número de línia, imprimiu-la després de l'altra informació del símbol.

-n

-v

--numeric-sort

Ordena símbols numèricament per les seves adreces, en comptes d'alfabèticament, pels seus noms.

-p

--no-classificar

No es molesti a ordenar els símbols en cap ordre; imprimeix-los en l'ordre trobat.

-P

importabilitat

Utilitzeu el format de sortida estàndard POSIX.2 en comptes del format predeterminat. Equivalent a -f posix .

-S

- mida d'impressió

Imprimeix la mida dels símbols definits per al format de sortida "bsd".

-s

--print-armap

Quan s'enumeren els símbols dels membres de l'arxiu, incloeu l'índex: un mapatge (emmagatzemat a l'arxivador per ar o ranlib ) dels quals els mòduls contenen definicions per a quins noms.

-r

--reverse-sort

Inverteix l'ordre del tipus (ja sigui numèric o alfabètic); deixa que l'últim passi primer.

- size-sort

Ordena símbols per mida. La mida es calcula com la diferència entre el valor del símbol i el valor del símbol amb el següent valor superior. S'imprimeix la mida del símbol, en lloc del valor.

-t radix

--radix = radix

Utilitzeu el radix com a radix per imprimir els valors dels símbols. Ha de ser d per a decimal, o per octal, o x per hexadecimal.

--target = bfdname

Especifiqueu un format de codi d'objecte que no sigui el format predeterminat del vostre sistema.

-u

- sense afinar-només

Mostra només símbols indefinits (aquells externs a cada fitxer d'objectes).

- definit només

Mostra només símbols definits per a cada fitxer d'objectes.

-V

--version

Mostra el número de versió de nm i surt.

-X

Aquesta opció s'ignora per compatibilitat amb la versió AIX de nm . Es necessita un paràmetre que ha de ser la cadena 32_64 . El mode predeterminat d'AIX nm correspon a -X 32 , que no és compatible amb GNU nm .

- ajuda

Mostra un resum de les opcions a nm i surt.

VEGEU TAMBÉ

ar (1), objdump (1), ranlib (1), i les entrades d'informació per binutils .

Important: utilitzeu l'ordre man ( % home ) per veure com s'utilitza una comanda a l'ordinador en particular.