Nm - Linux Komutu - Unix Komutu

nm - nesne dosyalarından semboller listesi

ÖZET

nm [ -a | --debug-syms ] [ -g | - sadece-sadece
[ -B ] [ -C | --demangle [= stil ]] [ -D | --dinamik
[ -S | --print-boyutu ] [ -s | --print-armap ]
[ -A | -o | - basılı dosya adı
[ -n | -v | --numerik sıralama ] [ -p | - sırala
[ -r | --reverse-sort ] [- boyut-sıra ] [ -u | sadece -
[ -t yarıçapı | --radix = radix ] [ -P | - taşınabilirlik
[ --target = bfdname ] [ -f biçimi | --format = format
[ - sadece -defined ] [ -l | - satır-numaraları ] [ --no-demangle ]
[ -V | --version ] [ -X 32_64 ] [ --help ] [ objfile ...]

AÇIKLAMA

GNU nm , nesne dosyalarından objfile sembollerini listeler .... Eğer herhangi bir nesne dosyası argüman olarak listelenmezse, nm dosyayı a.out olarak kabul eder.

Her sembol için, nm şunları gösterir:

*

Sembol değeri, seçenekler tarafından seçilen yarıçapta (aşağıya bakınız) veya varsayılan olarak onaltılık olarak.

*

Sembol tipi. En azından aşağıdaki tipler kullanılır; Diğerleri de, nesne dosya formatına bağlı olarak. Küçük harf ise, sembol yereldir; Büyük harf ise, sembol globaldir (harici).

bir

Sembolün değeri mutlaktır ve daha fazla bağlantı ile değiştirilmeyecektir.

B

Simge, başlatılmamış veri bölümünde (BSS olarak bilinir).

C

Sembol yaygındır. Ortak semboller başlatılmamış verilerdir. Bağlarken, aynı ada sahip birden çok ortak sembol görünebilir. Sembol herhangi bir yerde tanımlanmışsa, ortak semboller tanımlanmamış referanslar olarak kabul edilir.

D

Sembol başlatılan veri bölümünde.

G,

Simge küçük nesneler için başlatılmış veri bölümünde. Bazı nesne dosya formatları, büyük bir global dizinin tersine küresel bir int değişkeni gibi küçük veri nesnelerine daha verimli erişim sağlar.

ben

Sembol, başka bir sembole dolaylı bir referanstır. Bu nadiren kullanılan a.out nesne dosya formatına bir GNUextension.

N-

Sembol bir hata ayıklama sembolüdür.

R,

Sembol salt okunur veri bölümündedir.

S

Simge, küçük nesneler için başlatılmamış bir veri bölümündedir.

T

Sembol metin (kod) bölümünde.

U

Sembolü tanımsızdır.

V

Bir sembol zayıf bir nesnedir. Zayıf tanımlı bir sembol normal tanımlanmış bir sembol ile bağlandığında, normal tanımlanmış sembol hata olmadan kullanılır. Zayıf tanımsız bir sembol bağlandığında ve sembol tanımlanmadığında, zayıf sembolün değeri sıfır olmaksızın sıfır olur.

W

Sembol, zayıf bir nesne sembolü olarak özel olarak etiketlenmemiş zayıf bir semboldür. Zayıf tanımlı bir sembol normal tanımlanmış bir sembol ile bağlandığında, normal tanımlanmış sembol hata olmadan kullanılır. Zayıf tanımsız bir sembol bağlandığında ve sembol tanımlanmadığında, zayıf sembolün değeri sıfır olmaksızın sıfır olur.

-

Sembol, bir a.out nesne dosyasındaki bir stabs semboldür. Bu durumda, basılan sonraki değerler, diğer alanların, stabların alt alanının ve bıçak tipinin stablarıdır. Ayırıcı sembolleri, hata ayıklama bilgilerini tutmak için kullanılır.

?

Sembol tipi bilinmiyor veya nesne dosya formatı belli.

*

Sembol adı.

SEÇENEKLER

Burada alternatifler olarak gösterilen uzun ve kısa seçenek biçimleri eşdeğerdir.

-A

-O

--print-dosya adı

Her sembolü, tüm girdi sembollerinden önce yalnızca bir kez giriş dosyasını tanımlamak yerine, bulunduğu giriş dosyasının (veya arşiv üyesinin) ismiyle ayırın.

-a

--debug-syms

Tüm sembolleri, hatta yalnızca hata ayıklayıcı sembolleri görüntüleyin; normalde bunlar listelenmez.

-B

--format = bsd ile aynıdır (MIPS nm ile uyumluluk için).

-C

--demangle [= stil ]

Düşük seviyeli sembol isimlerini kullanıcı seviyesinde isimlendirin. Sistem tarafından başlatılan herhangi bir başlangıç ​​alt çizgilerinin çıkarılmasının yanı sıra, C ++ işlev isimlerini de okunabilir hale getirir. Farklı derleyiciler farklı yönetim stilleri var. İsteğe bağlı ayrıştırma stili argümanı, derleyiciniz için uygun bir ayrıştırma stili seçmek için kullanılabilir.

no-demangle

Düşük seviyeli sembol isimlerini gösterme. Bu varsayılan.

-D

--dinamik

Normal sembollerden ziyade dinamik sembolleri görüntüleyin. Bu, yalnızca paylaşılan kütüphaneler gibi dinamik nesneler için anlamlıdır.

-f formatı

--format = format

"Bsd", "sysv" veya "posix" olabilecek çıkış biçimi formatını kullanın. Varsayılan "bsd" dir. Biçimin sadece ilk karakteri önemlidir; Üst veya küçük harf olabilir.

-g

--extern okunur

Sadece harici sembolleri göster.

-l

--Satır numaraları

Her sembol için, dosya adını ve satır numarasını bulmaya çalışmak için hata ayıklama bilgilerini kullanın. Tanımlanmış bir sembol için, sembolün adresinin satır numarasını arayın. Tanımlanmamış bir sembol için, sembole işaret eden bir yeniden yerleştirme girişinin satır numarasını arayın. Hat numarası bilgisi bulunursa, diğer sembol bilgisinden sonra yazdırın.

-n

-v

--numeric-sort

Sembolleri adlarına göre alfabetik olarak değil, adresleriyle sayısal olarak sıralayın.

-p

no-sort

Sembolleri herhangi bir sıraya göre sıralamaktan çekinmeyin; Karşılaşılan sırada yazdırın.

-P

--portability

Varsayılan format yerine POSIX.2 standart çıkış formatını kullanın. -f posix ile eşdeğerdir.

-S

--print boyutlu

"Bsd" çıktı biçimi için tanımlı sembollerin boyutlarını yazdırın.

-s

--print-armap

Arşiv üyelerinden semboller listelenirken, indeksi ekleyin: hangi modüllerin hangi isimlere ait tanımları içerdiğini gösteren bir arşivleme ( ar veya ranlib ile arşivde saklanır).

-r

--reverse-sort

Sıralama sırasını tersine çevir (sayısal veya alfabetik); en son önce gelsin.

--size-sort

Sembolleri boyuta göre sırala. Boyut, sembolün değeri ile bir sonraki daha yüksek değere sahip sembolün değeri arasındaki fark olarak hesaplanır. Sembolün boyutu, değer yerine yazdırılır.

-t çap

--radix = radix

Sembol değerlerini basmak için radix'i radix olarak kullanın. Onaltılık, o sekizlik veya onaltılık için x olmalıdır .

--target = bfdname

Sisteminizin varsayılan biçiminden başka bir nesne kodu formatı belirtin.

-u

--undefined okunur

Yalnızca tanımlanmamış sembolleri (her nesne dosyasına harici olanlar) görüntüleyin.

--defined okunur

Her bir nesne dosyası için sadece tanımlanmış sembolleri görüntüleyin.

-V

version

Nm'nin versiyon numarasını göster ve çık.

-X

Bu seçenek, nm'nin AIX sürümü ile uyumluluk açısından göz ardı edilir. 32_64 dizesi olması gereken bir parametre alır. Varsayılan AIX nm modu, GNU nm tarafından desteklenmeyen -X32'ye karşılık gelir.

--yardım et

Nm ve çıkış için seçeneklerin bir özetini göster.

AYRICA BAKINIZ

ar (1), objdump (1), ranlib (1) ve binutils için Bilgi girişleri.

Önemli: Komutunuzun belirli bir bilgisayarda nasıl kullanıldığını görmek için man komutunu ( % adam ) kullanın.