Skip to main content

Linux - Unix Command: nm

SecurityTube GNU Debugger Expert: Part 3: Inspecting Symbols with NM (April 2025)

SecurityTube GNU Debugger Expert: Part 3: Inspecting Symbols with NM (April 2025)
Anonim

simbol senarai nm dari fail objek

SINOPSIS

nm -a|--debug-syms -g|- sahaja sahaja -B -C|- kecil= gaya -D|- -S|- saiz cap -s|- cap-armap -A|-o|--print-file-name -n|-v|- jenis-jenis -p|- tidak ada -r|- pelbagai jenis --size-sort -u|- hanya tertakluk -t radix |--radix = radix -P|- kebolehpasaran --target = bfdname -f format |--format = format --defined sahaja -l|- nombor talian - tidak ada demam -V|- pengalihan -X 32_64 - membantu objfile …

DESKRIPSI

GNUnm menyenaraikan simbol dari fail objek objfile …. Jika tiada fail objek disenaraikan sebagai argumen,nm menganggap fail itu a.out .

Untuk setiap simbol,nm menunjukkan:

*

Nilai simbol, dalam radix dipilih oleh pilihan (lihat di bawah), atau heksadesimal secara lalai.

*

Jenis simbol. Sekurang-kurangnya jenis berikut digunakan; yang lain, juga, bergantung pada format fail objek. Jika huruf kecil, simbol adalah setempat; jika huruf besar, simbol itu adalah global (luaran).

A

Nilai simbol adalah mutlak, dan tidak akan diubah dengan menghubungkan selanjutnya.

B

Simbolnya adalah dalam seksyen data yang tidak dikenali (dikenali sebagai BSS).

C

Simbol itu adalah perkara biasa. Simbol-simbol biasa adalah data yang tidak dikenali. Apabila menyambung, banyak simbol biasa boleh muncul dengan nama yang sama. Jika simbol ditakrifkan di mana-mana sahaja, simbol-simbol umum dianggap sebagai rujukan yang tidak jelas.

D

Simbol itu adalah di bahagian data yang telah diisytiharkan.

G

Simbol itu berada di bahagian data yang telah dimulakan untuk objek kecil. Sesetengah format fail objek membenarkan akses yang lebih cekap kepada objek data kecil, seperti pembolehubah int global berbanding dengan array global yang besar.

Saya

Simbol adalah rujukan tidak langsung kepada simbol lain. Ini adalah ketegangan GNU ke format file a.out objek yang jarang digunakan.

N

Simbol adalah simbol debugging.

R

Simbol itu dalam seksyen data baca sahaja.

S

Simbol itu berada di bahagian data yang tidak diingini untuk objek kecil.

T

Simbol itu terdapat dalam bahagian teks (kod).

U

Simbol tidak jelas.

V

Simbol adalah objek lemah. Apabila simbol didefinisikan lemah dikaitkan dengan simbol didefinisikan normal, simbol didefinisikan normal digunakan tanpa ralat. Apabila lambang yang tidak jelas tidak dikaitkan dan simbol tidak ditakrifkan, nilai simbol lemah menjadi sifar tanpa ralat.

W

Simbol adalah lambang lemah yang tidak ditandakan secara khusus sebagai lambang objek lemah. Apabila simbol didefinisikan lemah dikaitkan dengan simbol didefinisikan normal, simbol didefinisikan normal digunakan tanpa ralat. Apabila lambang yang tidak jelas tidak dikaitkan dan simbol tidak ditakrifkan, nilai simbol lemah menjadi sifar tanpa ralat.

-

Simbol adalah lambang simbol dalam fail objek a.out. Dalam kes ini, nilai-nilai seterusnya yang dicetak adalah menikam medan lain, medan turun tikaman, dan jenis menusuk. Simbol teguk digunakan untuk memegang maklumat debugging.

?

Jenis simbol tidak diketahui, atau format fail objek khusus.

*

Nama simbol.

PILIHAN

Bentuk pilihan panjang dan pendek yang ditunjukkan di sini sebagai alternatif, bersamaan.

-A

-o

--print-file-name

Hadirkan setiap simbol dengan nama file masukan (atau ahli arkib) di mana ia dijumpai, dan bukannya mengenal pasti fail masukan sekali sahaja, sebelum semua simbolnya.

-a

--debug-syms

Paparkan semua simbol, walaupun simbol-simbol sahaja; biasanya ini tidak disenaraikan.

-B

Sama seperti--format = bsd (untuk keserasian dengan MIPSnm).

-C

--menggelamkan = gaya

Decode ( demang ) nama simbol peringkat rendah ke nama peringkat pengguna. Selain mengeluarkan sebarang garis panduan awal yang dibuat oleh sistem, ini menjadikan nama fungsi C ++ dapat dibaca. Pengkompil yang berbeza mempunyai gaya mangling yang berbeza. Argumen gaya demangling pilihan boleh digunakan untuk memilih gaya demangling yang sesuai untuk pengkompil anda.

- tidak ada demam

Jangan menafikan nama simbol peringkat rendah. Ini adalah lalai.

-D

-

Paparkan simbol dinamik dan bukan simbol biasa. Ini hanya bermakna bagi objek dinamik, seperti jenis perpustakaan yang dikongsi bersama.

-f format

--format = format

Gunakan format output format , yang boleh "bsd", "sysv", atau "posix". Lalai adalah "bsd". Hanya watak pertama format adalah penting; ia boleh menjadi kes atas atau bawah.

-g

- sahaja sahaja

Paparkan hanya simbol luaran.

-l

- nombor talian

Untuk setiap simbol, gunakan maklumat debug untuk mencuba mencari nama fail dan nombor baris. Untuk simbol yang ditetapkan, cari nombor baris alamat simbol. Untuk simbol yang tidak ditakrifkan, cari nombor baris bagi entri penempatan semula yang merujuk kepada simbol. Jika maklumat nombor talian boleh didapati, cetaknya selepas maklumat simbol yang lain.

-n

-v

- jenis-jenis

Catat simbol secara numerik dengan alamat mereka, bukan abjad mengikut nama mereka.

-p

- tidak ada

Jangan ganggu untuk menyusun simbol dalam sebarang pesanan; cetak mereka mengikut urutan yang ditemui.

-P

- kebolehpasaran

Gunakan format output standard POSIX.2 dan bukannya format lalai. Bersamaan dengan-f posix.

-S

- saiz cap

Saiz cetakan simbol yang ditetapkan untuk format output "bsd".

-s

- cap-armap

Apabila simbol penyenaraian dari ahli arkib, masukkan indeks: pemetaan (disimpan dalam arkib olehar atauranlib) yang mana modul mengandungi definisi untuk nama mana.

-r

- pelbagai jenis

Membalikkan urutan jenis (sama ada angka atau abjad); biarkan yang terakhir datang dahulu.

--size-sort

Catat simbol mengikut saiz. Saiznya dikira sebagai perbezaan antara nilai simbol dan nilai simbol dengan nilai yang lebih tinggi seterusnya. Saiz simbol dicetak, dan bukannya nilai.

-t radix

--radix = radix

Gunakan radix sebagai radix untuk mencetak nilai simbol. Ia mestid untuk perpuluhan,o untuk oktal, ataux untuk heksadesimal.

--target = bfdname

Tentukan format kod objek selain format lalai sistem anda.

-u

- hanya tertakluk

Paparkan hanya simbol yang tidak jelas (yang luaran untuk setiap fail objek).

--defined sahaja

Hanya memaparkan simbol yang ditetapkan untuk setiap fail objek.

-V

- pengalihan

Tunjukkan nombor versinm dan keluar.

-X

Pilihan ini diabaikan untuk keserasian dengan versi AIXnm. Ia mengambil satu parameter yang mesti menjadi rentetan32_64. Mod lalai AIXnm sepadan dengan-X 32, yang tidak disokong oleh GNUnm.

- membantu

Tunjukkan ringkasan pilihan untuknm dan keluar.

LIHAT JUGA

ar (1), objdump (1), ranlib (1), dan penyertaan maklumat untuk binutils .

Penting: Menggunakan lelaki perintah ( % lelaki ) untuk melihat bagaimana arahan digunakan pada komputer tertentu anda.