Skip to main content

Linux - Unix komanda: nm

Anonim

nm - saraksta simboli no objektu failiem

SINOPSIS

nm -a|--debug-sims -g|- tikai eksterns -B -C|- mēms= stils -D|- dinamisks -S|- drukas izmērs -s|- drukāšanas grāmata -A|-o|- drukas faila nosaukums -n|-v|--numeric-sort -p|- nav kārtot -r|- reversā kārtot - izmēra veida -u|--definēts tikai -t radix |--radix = radix -P|- pārklājums --target = bfdname -f formātā |--format = formātā - definēts tikai -l|- line-numuri -ne-demangle -V|- pārveide -X 32_64 --palīdzība objfile …

APRAKSTS

GNUnm uzskaitīti simboli no objektu failiem objfile …. Ja objektu faili netiek uzskaitīti kā argumenti,nm uzņem failu a.out .

Par katru simbolunm rāda:

*

Simbola vērtība, kas ir atlasīta pēc opcijām (skatīt zemāk) vai pēc noklusējuma sešpadsmitais.

*

Simbola tips. Izmanto vismaz šādus tipus: arī citi, atkarībā no objekta faila formāta. Ja mazais simbols ir simbols ir lokāls; ja lielais skaitlis ir simbols ir globāls (ārējs).

A

Simbola vērtība ir absolūta, un tā netiks mainīta, tālāk saistot.

B

Simbols atrodas neinitializēto datu sadaļā (BSS).

C

Simbols ir izplatīts. Kopējie simboli ir neinitializēti dati. Saistot, vairāki bieži simboli var parādīties ar tādu pašu nosaukumu. Ja simbols ir definēts jebkur, kopīgie simboli tiek uzskatīti par nenoteiktiem norādījumiem.

D

Simbols atrodas inicializēto datu sadaļā.

G

Simbols ir inicializēta datu sadaļā maziem objektiem. Daži objektu failu formāti ļauj efektīvāk piekļūt nelieliem datu objektiem, piemēram, globālam int mainīgajam, nevis lielam globālam masīvam.

Es

Simbols ir netieša atsauce uz citu simbolu. Šis ir GNU paplašinājums a.out objekta faila formātā, kas tiek reti izmantots.

N

Simbols ir atkļūdošanas simbols.

R

Simbols ir tikai datu noliktavā.

S

Simbols atrodas mazu objektu neinitializētu datu sadaļā.

T

Simbols atrodas teksta (koda) sadaļā.

U

Simbols ir nenoteikts.

V

Simbols ir vājš objekts. Ja vājš definēts simbols ir saistīts ar parasto definēto simbolu, parasto definēto simbolu lieto bez kļūdām. Ja vājš nenoteikts simbols ir saistīts un simbols nav definēts, vājā simbola vērtība kļūst nulle bez kļūdām.

W

Simbols ir vājš simbols, kas nav īpaši atzīmēts kā vājš objekta simbols. Ja vājš definēts simbols ir saistīts ar parasto definēto simbolu, parasto definēto simbolu lieto bez kļūdām. Ja vājš nenoteikts simbols ir saistīts un simbols nav definēts, vājā simbola vērtība kļūst nulle bez kļūdām.

-

Simbols ir simbola apzīmējums a.out objekta failā. Šajā gadījumā nākamās drukātās vērtības ir citi lauki, stābju apraksta lauka un stab tipa. Stabu simboli tiek izmantoti, lai noturētu atkļūdošanas informāciju.

?

Simbola veids nav zināms vai objekta faila formāts ir specifisks.

*

Simbola nosaukums.

OPTIONS

Garās un īsās opciju formas, kuras parādītas šeit kā alternatīvas, ir līdzvērtīgas.

-A

-o

- drukas faila nosaukums

Ievadiet katru simbolu ar ievades faila (vai arhīva locekļa) nosaukumu, kurā tas tika atrasts, nevis tikai ievades failu vienreiz, pirms visi tā simboli.

-a

--debug-sims

Parādiet visus simbolus, pat tikai atkļūdotājs-simbolus; parasti tie nav uzskaitīti.

-B

Tāpat kā--format = bsd (saderībai ar MIPSnm).

-C

- dimants = stils

Decodēt ( dimangle ) zema līmeņa simbolu nosaukumi lietotāja līmeņa nosaukumos. Bez tam, noņemot jebkuru sākotnējo pasvītrojumu, kas pievienots sistēmai, tas padara C + + funkciju nosaukumus nolasāmus. Dažādiem kompilatoriem ir dažādi mangling stili. Neobligātās atdalīšanas stila argumentu var izmantot, lai izvēlētos atbilstošu kompilatora atdalīšanas stilu.

-ne-demangle

Nenogrieziet zema līmeņa simbolu nosaukumus. Tas ir noklusējums.

-D

- dinamisks

Parādiet dinamiskos simbolus, nevis parastos simbolus. Tas ir tikai nozīmīgs dinamiskajiem objektiem, piemēram, atsevišķiem koplietojamo bibliotēku veidiem.

-f formātā

--format = formātā

Izmantojiet izvades formātu formātā , kas var būt "bsd", "sysv" vai "posix". Noklusējuma vērtība ir "bsd". Tikai pirmā rakstzīme formātā ir nozīmīgs; tā var būt gan augšējā, gan mazā burta.

-g

- tikai eksterns

Rādīt tikai ārējos simbolus.

-l

- line-numuri

Katram simbolam izmantojiet atkļūdošanas informāciju, lai mēģinātu atrast faila nosaukumu un rindas numuru. Par noteiktu simbolu meklējiet simbola adreses rindas numuru. Par nenoteiktu simbolu meklējiet pārvietošanas ieraksta līnijas numuru, kas attiecas uz simbolu. Ja rindas numura informāciju var atrast, izdrukājiet to pēc citas simbola informācijas.

-n

-v

--numeric-sort

Šķirot simbolus skaitliski pēc to adresēm, nevis alfabētiskā secībā pēc to nosaukumiem.

-p

- nav kārtot

Neuztraucieties kārtot simbolus; izdrukājiet tos secībā.

-P

- pārklājums

Izmantojiet POSIX.2 standarta izvades formātu, nevis noklusējuma formātu. Līdzvērtīgs-f pozix.

-S

- drukas izmērs

Izgatavoto formātu "bsd" definēto simbolu izmēru drukāšanai.

-s

- drukāšanas grāmata

Sarakstā iekļaujot arhīvu dalībnieku simbolus, iekļauj indeksu: kartēšanu (arhīvā saglabāar vairanlib), no kuriem moduļos ir definīcijas, uz kuriem nosaukumiem.

-r

- reversā kārtot

Mainīt kārtības secību (vai nu skaitlisks vai alfabētisks); Ļaujiet pēdējam nāk vispirms.

- izmēra veida

Kārtojiet simbolus pēc lieluma. Izmērs tiek aprēķināts kā starpība starp simbola vērtību un simbola vērtību ar nākamo lielāko vērtību. Simbola lielums tiek drukāts, nevis vērtība.

-t radix

--radix = radix

Izmantojiet radix kā simbols vērtību drukāšanai. Tam jābūtd par decimāldaļuo astotajam, vaix par heksadecimālo.

--target = bfdname

Norādiet objekta koda formātu, kas nav jūsu sistēmas noklusējuma formāts.

-u

--definēts tikai

Rādīt tikai nenoteiktus simbolus (tos, kas ir ārpus katra objekta faila).

- definēts tikai

Parādiet tikai definētus simbolus katram objekta failam.

-V

- pārveide

Parādīt versijas numurunm un izeja.

-X

Šī opcija tiek ignorēta saderībai ar AIX versijunm. Tas aizņem vienu parametru, kam jābūt virknei32_64. AIX noklusējuma režīmsnm attiecas uz-X 32, ko GNU neatbalstanm.

--palīdzība

Parādiet opciju kopsavilkumu, lainm un izeja.

SKATĪT ARĪ

ar (1), objdump (1), ranlib (1) un informācijas ieraksti par binutils .

Svarīgs: Izmantojiet cilvēks komanda ( % cilvēks ), lai redzētu, kā komanda tiek izmantota jūsu konkrētajā datorā.