Skip to main content

Linux - Unix Komutu: nm

Linux Command Line Tutorial For Beginners 1 - Introduction (Mayıs Ayı 2024)

Linux Command Line Tutorial For Beginners 1 - Introduction (Mayıs Ayı 2024)
Anonim

nm - nesne dosyalarından semboller listesi

ÖZET

nm -a|--debug-syms -g|--extern okunur -B -C|--demangle= stil -D|--dinamik -S|--print boyutlu -s|--print-armap -A|-O|--print-dosya adı -n|-v|--numeric-sort -p|no-sort -r|--reverse-sort --size-sort -u|--undefined okunur -t kök |--radix = kök -P|--portability --target = bfdname -f biçim |--format = biçim --defined okunur -l|--Satır numaraları no-demangle -V|version -X 32_64 --yardım et objfile …

AÇIKLAMA

GNUmil Sembolleri nesne dosyalarından listeler. objfile …. Hiçbir nesne dosyası argüman olarak listelenmemişse,mil dosyayı varsayar a.out .

Her sembol içinmil 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

Sembol küçük nesneler için başlatılmamış bir veri bölümünde.

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

Aynı--format = BSD (MIPS ile uyumluluk içinmil).

-C

--demangle = stil

Decode ( demangle ) alt düzey sembol isimleri kullanıcı seviyesinde isimler. 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 biçim

--format = biçim

Çıktı formatını kullan biçim "bsd", "sysv" veya "posix" olabilir. Varsayılan "bsd" dir. Sadece ilk karakteri biçim ö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. Eşittir-f posix.

-S

--print boyutlu

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

-s

--print-armap

Arşiv üyelerinden sembolleri listelerken, dizini ekleyin: bir eşleme (arşivde saklanır.)ar veyarunlibHangi modüllerin hangi isimler için tanımları içerdiği.

-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 kök

--radix = kök

kullanım kök sembol değerlerini basmak için radx olarak. Olmalıd ondalık içinO sekizli için veyax onaltılı için.

--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

Sürüm numarasını göstermil ve çıkış.

-X

Bu seçenek AIX sürümüyle uyumluluk açısından göz ardı edilir.mil. Dize olması gereken bir parametre alır.32_64. AIX varsayılan modumil karşılık gelir-X 32GNU tarafından desteklenmeyenmil.

--yardım et

İçin seçeneklerin bir özetini göstermil ve çıkış.

AYRICA BAKINIZ

ar (1), objdump (1), runlib (1) ve Bilgi girişleri binutils'ler .

Önemli: Kullan adam komut ( % adam Belirli bir bilgisayarda nasıl bir komutun kullanıldığını görmek için).