"nm" komutu, bir nesne dosyasının veya paylaşılabilir kütüphanenin sembollerini listeleyen bir Unix komutudur. Bu semboller, fonksiyonlar, değişkenler ve diğer tanımlanmış isimlerdir. Programcılar, özellikle programın nasıl çalıştığını anlama, hata ayıklama veya statik analiz gibi durumlarda bu komutu kullanır.
İşte nm komutu hakkında daha detaylı bilgiler:
Amaç: Bir yürütülebilir dosya veya nesne dosyasındaki sembolleri listelemek. Bu sembollerin adreslerini, türlerini ve isimlerini gösterir.
Sözdizimi: nm [seçenekler] dosya
Önemli Seçenekler:
-a
veya --debug-syms
: Hata ayıklama sembollerini de listeler.-D
veya --dynamic
: Paylaşılabilir kütüphanelerdeki dinamik sembolleri listeler.-g
veya --extern-only
: Sadece harici olarak tanımlanmış sembolleri listeler.-l
veya --line-numbers
: Mümkünse, sembollerin satır numaralarını gösterir.-r
veya --reverse-sort
: Sembolleri ters sırada listeler.-u
veya --undefined
: Tanımlanmamış sembolleri listeler.-n
veya --numeric-sort
: Adres sırasına göre sıralama yapar.Çıktı: nm komutu genellikle aşağıdaki sütunları içeren bir çıktı üretir:
T
tanımlanmış değişken, D
tanımlanmış veri, t
statik değişken, U
tanımlanmamış sembol, W
zayıf sembol, R
yalnızca okuma verisi vb.). Türler komut satırı arayüzünden arama yapabilirsiniz.Kullanım Örnekleri:
nm myprogram
: myprogram
yürütülebilir dosyasındaki tüm sembolleri listeler.nm -D libmylib.so
: libmylib.so
paylaşılabilir kütüphanesindeki dinamik sembolleri listeler.nm -u myprogram
: myprogram
yürütülebilir dosyasında tanımlanmamış sembolleri listeler (bağlama sorunlarını tespit etmek için faydalıdır).nm -l myobject.o
: myobject.o
nesne dosyasındaki sembollerin satır numaralarını gösterir.Özetle: nm komutu, özellikle programcılar için, programın iç yapısını anlamak ve olası sorunları tespit etmek için oldukça kullanışlı bir araçtır. Komutun zengin seçenekleri, çıktıları belirli ihtiyaçlara göre özelleştirmeyi sağlar.
Ne Demek sitesindeki bilgiler kullanıcılar vasıtasıyla veya otomatik oluşturulmuştur. Buradaki bilgilerin doğru olduğu garanti edilmez. Düzeltilmesi gereken bilgi olduğunu düşünüyorsanız bizimle iletişime geçiniz. Her türlü görüş, destek ve önerileriniz için iletisim@nedemek.page