Skip to main content

Linux - Unix Command: nm

Anonim

nm - zoznam symbolov z objektových súborov

SYNOPSA

nm -a|--debug-SYMS -g|--extern-only -B -C|--demangle= štýl -D|--dynamic -S|--print-size -s|--print-armap -A|-o|--print-file-name -n|-v|--numeric-sort -p|--no-sort -r|--reverse-sort --size-sort -u|--undefined-only -t koreň |--radix = koreň -P|--portability --target = bfdname -f formát |--format = formát --defined-only -l|--line-numbers --no-demangle -V|--version -X 32_64 --Pomoc objfile …

POPIS

GNUnm zobrazuje symboly z objektových súborov objfile …. Ak žiadne súbory objektov nie sú uvedené ako argumenty,nm preberá súbor a.out .

Pre každý symbol,nm relácie:

*

Hodnota symbolu v políčku označenom voľbami (pozri nižšie) alebo v šestnástkovej sústave.

*

Typ symbolu. Používajú sa prinajmenšom tieto typy: iné sú tiež závislé od formátu súboru objektu. Pri malých písmenách je symbol miestny; ak je veľké, symbol je globálny (externý).

Hodnota symbolu je absolútna a nebude sa meniť ďalším prepojením.

B

Symbol sa nachádza v časti neinicializovaných údajov (známe ako BSS).

C

Symbol je bežný. Bežné symboly sú neinicializované údaje. Pri prepojení sa môže zobrazovať viac spoločných symbolov s rovnakým názvom. Ak je symbol definovaný kdekoľvek, bežné symboly sa považujú za nedefinované referencie.

D

Symbol je v sekcii inicializovaných údajov.

G

Symbol je v inicializovanej sekcii údajov pre malé objekty. Niektoré formáty súborov objektov umožňujú efektívnejší prístup k malým dátovým objektom, ako je globálna int premenná na rozdiel od veľkého globálneho poľa.

ja

Symbol je nepriamy odkaz na iný symbol. Toto je GNUextension k formátu súboru a.out object, ktorý je zriedka používaný.

N

Symbol je symbol ladenia.

R

Symbol je v sekcii údajov len na čítanie.

S

Symbol sa nachádza v neinicializovanej sekcii údajov pre malé objekty.

T

Symbol je v časti text (kód).

U

Symbol je nedefinovaný.

V

Symbol je slabý objekt. Ak je slabý definovaný symbol prepojený s normálnym definovaným symbolom, normálny definovaný symbol sa používa bez chyby. Keď je spojený slabý nedefinovaný symbol a symbol nie je definovaný, hodnota slabého symbolu sa stane nula bez chyby.

W

Symbol je slabý symbol, ktorý nebol označený ako symbol slabého objektu. Ak je slabý definovaný symbol prepojený s normálnym definovaným symbolom, normálny definovaný symbol sa používa bez chyby. Keď je spojený slabý nedefinovaný symbol a symbol nie je definovaný, hodnota slabého symbolu sa stane nula bez chyby.

-

Symbol je symbol stroboskopov v súbore objektu a.out. V tomto prípade sú ďalšie hodnoty vytlačené ostatné polia, políčka zoradené dole a typ bodky. Symboly Stabs sa používajú na uloženie informácií o ladení.

?

Typ symbolu je neznámy alebo špecifický formát súboru objektov.

*

Názov symbolu.

MOŽNOSTI

Dlhé a krátke formy možností, ktoré sú tu uvedené ako alternatívy, sú ekvivalentné.

-A

-o

--print-file-name

Pred každým symbolom pred každým symbolom zadajte názov vstupného súboru (alebo člena archívu), v ktorom bol nájdený, namiesto identifikácie vstupného súboru iba raz.

-a

--debug-SYMS

Zobraziť všetky symboly, dokonca aj znaky, ktoré používajú len debugger; zvyčajne nie sú uvedené.

-B

Rovnake ako--format = bsd (pre kompatibilitu s MIPSnm).

-C

--demangle = štýl

Dekódovať ( demangle ) názvy symbolov nízkej úrovne na názvy používateľov. Okrem odstránenia akéhokoľvek počiatočného podčiarknutia predpísaného systémom to umožňuje, aby názvy funkcií C ++ boli čitateľné. Rôzne kompilátory majú rôzne štýly manglingu. Voliteľný argument štýlu vykresľovania môžete použiť na výber vhodného štýlu prekladania pre kompilátora.

--no-demangle

Neodstraňujte názvy symbolov na nižšej úrovni. Toto je predvolené nastavenie.

-D

--dynamic

Zobrazte skôr dynamické symboly než bežné symboly. Je to dôležité iba pre dynamické objekty, ako sú určité typy zdieľaných knižníc.

-f formát

--format = formát

Použite výstupný formát formát , ktoré môžu byť "bsd", "sysv" alebo "posix". Predvolená hodnota je "bsd". Len prvý znak formát je významná; môže to byť buď malé alebo malé.

-g

--extern-only

Zobrazovať iba externé symboly.

-l

--line-numbers

Pre každý symbol použite ladiace informácie, aby ste sa pokúsili nájsť názov súboru a číslo riadku. Pre definovaný symbol vyhľadajte číslo riadku adresy symbolu. Pri neurčitom symbole vyhľadajte číslo riadku položky premiestnenia, ktorá sa vzťahuje na symbol. Ak je možné nájsť informácie o číslach riadkov, vytlačte ich za ostatnými informáciami o symboloch.

-n

-v

--numeric-sort

Zoradiť symboly číselne podľa ich adries, nie podľa abecedy podľa ich mien.

-p

--no-sort

Nebojte sa triediť symboly v akomkoľvek poradí; vytlačte ich v poradí, v akom sa nachádzajú.

-P

--portability

Použite štandardný výstupný formát POSIX.2 namiesto predvoleného formátu. Rovnocenné s-f posix.

-S

--print-size

Veľkosť tlače definovaných symbolov pre výstupný formát "bsd".

-s

--print-armap

Pri výbere symbolov od členov archívu zahrňte index: mapovanie (uložené v archíve podľaar aleboranlib), ktorých moduly obsahujú definície pre ktoré názvy.

-r

--reverse-sort

Obrátiť poradie triedenia (či už číselné alebo abecedné); nech príde posledný prvý.

--size-sort

Zoradiť symboly podľa veľkosti. Veľkosť sa vypočíta ako rozdiel medzi hodnotou symbolu a hodnotou symbolu s najbližšou vyššou hodnotou. Veľkosť symbolu sa vytlačí skôr ako hodnota.

-t koreň

--radix = koreň

použitie koreň ako radix pre tlač symbolov. Musí to byťd pre desatinné,o za osmičkové aleboX pre hexadecimálne.

--target = bfdname

Zadajte formát objektového kódu iný ako predvolený formát systému.

-u

--undefined-only

Zobraziť iba nedefinované symboly (tie, ktoré sú externé pre každý objektový súbor).

--defined-only

Zobraziť iba definované symboly pre každý súbor objektov.

-V

--version

Zobraziť číslo verzienm a výstupu.

-X

Táto možnosť sa ignoruje z dôvodu kompatibility s verziou systému AIXnm, Trvá jeden parameter, ktorý musí byť reťazec32_64, Predvolený režim AIXnm sa viaže na-X 32, ktorý nie je podporovaný GNUnm.

--Pomoc

Zobraziť súhrn možností prenm a výstupu.

POZRI TIEŽ

ar (1), objdump (1), ranlib (1) a položky Info pre binutils .

dôležité: Použi muž príkaz ( % muž ), aby ste zistili, ako sa príkaz používa vo vašom konkrétnom počítači.