Skip to main content

Linux - comandă Unix: nm

How to Stop Ping in the Terminal (Mai 2024)

How to Stop Ping in the Terminal (Mai 2024)
Anonim

nm - simboluri de listă din fișierele obiect

REZUMAT

nm -A|--debug-Syms -g|--extern numai -B -C|--demangle= stil -D|--dinamic -S|--print-size -s|--print-armap -A|o-|--print-file-name -N|-v|--numeric-sortare -p|--no-sortare -r|--reverse-sortare --size-sortare -u|--undefined numai -t rădăcină |--radix = rădăcină -P|--portability --target = bfdname -f format |--format = format --defined numai -l|--line-numere --no-demangle -V|--versiune -X 32_64 --Ajutor objfile …

DESCRIERE

GNUnm listează simbolurile din fișierele obiect objfile …. Dacă nu există fișiere obiect enumerate ca argumente,nm își asumă dosarul a.out .

Pentru fiecare simbol,nm spectacole:

*

Valoarea simbolului, în radixul selectat de opțiuni (vedeți mai jos) sau hexazecimal în mod implicit.

*

Tipul de simbol. Sunt utilizate cel puțin următoarele tipuri; altele sunt, de asemenea, în funcție de formatul de fișier obiect. În cazul în litere mici, simbolul este local; dacă este mare, simbolul este global (extern).

A

Valoarea simbolului este absolută și nu va fi modificată prin legarea ulterioară.

B

Simbolul este în secțiunea de date neinitializate (cunoscută sub numele de BSS).

C

Simbolul este comun. Simbolurile comune sunt date neinitializate. La conectare, mai multe simboluri comune pot apărea cu același nume. Dacă simbolul este definit oriunde, simbolurile comune sunt tratate ca referințe nedefinite.

D

Simbolul se află în secțiunea de date inițializate.

G

Simbolul se află într-o secțiune de date inițializată pentru obiecte mici. Unele formate de fișiere obiect permit un acces mai eficient la obiecte de date mici, cum ar fi o variabilă int global, spre deosebire de o matrice globală mare.

eu

Simbolul este o referință indirectă la un alt simbol. Aceasta este o extensie GNU pentru formatul de fișier obiect a.out care este rar folosit.

N

Simbolul este un simbol de depanare.

R

Simbolul se află într-o secțiune de date numai pentru citire.

S

Simbolul se află într-o secțiune de date neinitializată pentru obiecte mici.

T

Simbolul este în secțiunea text (cod).

U

Simbolul este nedefinit.

V

Un simbol este un obiect slab. Atunci când un simbol slab definit este legat de un simbol normal definit, simbolul definit normal este utilizat fără eroare. Atunci când un simbol slab nedefinit este legat și simbolul nu este definit, valoarea simbolului slab devine zero fără nici o eroare.

W

Simbolul este un simbol slab care nu a fost specificat ca un simbol obiect slab. Atunci când un simbol slab definit este legat de un simbol normal definit, simbolul definit normal este utilizat fără eroare. Atunci când un simbol slab nedefinit este legat și simbolul nu este definit, valoarea simbolului slab devine zero fără nici o eroare.

-

Simbolul este un simbol al strobilor într-un fișier a.out object. În acest caz, următoarele valori tipărite sunt celelalte câmpuri, câmpurile din stânga și tipul de stab. Stabile simboluri sunt utilizate pentru a deține informații de depanare.

?

Tipul de simbol este necunoscut sau specific format de fișier obiect.

*

Numele simbolului.

OPȚIUNI

Formele lungi și scurte de opțiuni, prezentate aici ca alternative, sunt echivalente.

-A

o-

--print-file-name

Precede fiecare simbol prin numele fișierului de intrare (sau membru de arhivă) în care a fost găsit, mai degrabă decât identificarea fișierului de intrare o singură dată, înainte de toate simbolurile sale.

-A

--debug-Syms

Afișează toate simbolurile, chiar și simbolurile de depanare; în mod normal acestea nu sunt enumerate.

-B

La fel ca--format = bsd (pentru compatibilitatea cu MIPSnm).

-C

--demangle = stil

Decode ( demangle ) numele de simboluri de nivel redus în numele utilizatorilor. Pe lângă eliminarea oricărei subliniere inițială prefixată de sistem, acest lucru face ca numele funcțiilor C ++ să fie citite. Diferitele compilatoare au diferite stiluri de mangling. Argumentul de stil de demutare opțional poate fi folosit pentru a alege un stil de demagnetizare adecvat pentru compilatorul dvs.

--no-demangle

Nu desfaceți numele simbolurilor de nivel inferior. Acesta este setarea implicită.

-D

--dinamic

Afișați simbolurile dinamice mai degrabă decât simbolurile normale. Acest lucru are sens numai pentru obiectele dinamice, cum ar fi anumite tipuri de biblioteci partajate.

-f format

--format = format

Utilizați formatul de ieșire format , care poate fi "bsd", "sysv" sau "posix". Implicit este "bsd". Numai primul caracter al lui format este semnificativă; poate fi fie superioară, fie mică.

-g

--extern numai

Afișați numai simboluri externe.

-l

--line-numere

Pentru fiecare simbol, utilizați informații de depanare pentru a încerca să găsiți un nume de fișier și un număr de linie. Pentru un simbol definit, căutați numărul liniei adresei simbolului. Pentru un simbol nedefinit, căutați numărul liniei unei intrări de relocare care se referă la simbol. Dacă găsiți informații privind numărul de linie, imprimați-l după celelalte informații despre simbol.

-N

-v

--numeric-sortare

Sortați simbolurile numeric după adresele lor, mai degrabă decât alfabetic după numele lor.

-p

--no-sortare

Nu vă faceți griji pentru a sorta simbolurile în orice ordine; tipăriți-le în ordinea întâlnită.

-P

--portability

Utilizați formatul de ieșire standard POSIX.2 în locul formatului implicit. Echivalentă cu-f posix.

-S

--print-size

Imprimă dimensiunea simbolurilor definite pentru formatul de ieșire "bsd".

-s

--print-armap

Când listați simbolurile din membrii arhivelor, includeți indexul: o cartografiere (stocată în arhivă prinAr sauranlib) din care module conțin definiții pentru care nume.

-r

--reverse-sortare

Reveniți ordinea de sortare (numerică sau alfabetică); să vină ultimul.

--size-sortare

Sortați simbolurile după dimensiune. Dimensiunea este calculată ca diferența dintre valoarea simbolului și valoarea simbolului cu următoarea valoare mai mare. Dimensiunea simbolului este imprimată mai degrabă decât valoarea.

-t rădăcină

--radix = rădăcină

Utilizare rădăcină ca radix pentru imprimarea valorilor simbolurilor. Trebuie să fied pentru zecimale,o pentru octal sauX pentru hexazecimal.

--target = bfdname

Specificați un format de cod obiect diferit de formatul implicit al sistemului.

-u

--undefined numai

Afișați numai simbolurile nedefinite (cele exterioare fiecărui fișier obiect).

--defined numai

Afișați numai simboluri definite pentru fiecare fișier obiect.

-V

--versiune

Afișați numărul versiuniinm și ieșire.

-X

Această opțiune este ignorată pentru compatibilitatea cu versiunea AIX anm. Este nevoie de un parametru care trebuie să fie șirul32_64. Modul implicit al AIXnm corespunde-X 32, care nu este susținută de GNUnm.

--Ajutor

Afișați un rezumat al opțiunilor lanm și ieșire.

VEZI SI

Ar (1), objdump (1), ranlib (1) și intrările din Info pentru binutils .

Important: Folosește om comandă ( % om ) pentru a vedea cum se utilizează o comandă pe computerul dvs. particular.