İsim
dwarfdump - DWARF hata ayıklama bilgilerini dökümler ve doğrular
Sözdizimi
dwarfdump [seçenekler] [dosya_adı ...]
Açıklama
dwarfdump; nesne dosyalarındaki, arşivlerdeki ve .dSYM paketlerindeki DWARF bölümlerini ayrıştırır ve içeriklerini insan tarafından okunabilir biçimde yazdırır. Bölüme özel seçeneklerden biri veya --all belirtilmedikçe yalnızca .debug_info bölümü yazdırılır.
Herhangi bir girdi dosyası belirtilmezse, bunun yerine a.out kullanılır. Girdi dosyası olarak - kullanılırsa, dwarfdump girdiyi standart girdi akışından okur.
Seçenekler
-a, --all Desteklenen tüm DWARF bölümlerini dökümler.
--arch=
-c, --show-children
--debug-info seçeneğinin =
--color Çıktıda renkleri kullanır.
--error-display=<değer> Doğrulama yaparken görüntülenecek ayrıntı ve özet düzeyini ayarlar. --verify seçeneğini ima eder. Desteklenen değerler şunlardır:
quiet - Yalnızca hataların oluşup oluşmadığını gösterir. summary - Yalnızca bulunan hataların özetini gösterir. details - Her hatayı ayrıntılı olarak gösterir ancak özet göstermez. full - Her hatayı ve ayrıca bir özeti gösterir. [varsayılan]
-f
-F, --show-form DWARF öznitelik türlerinden sonra DWARF form türlerini gösterir.
-h, --help Bu komut için yardımı ve kullanımı gösterir.
--help-list Seçenekleri kategorilere ayırmadan bu komut için yardımı ve kullanımı gösterir.
-i, --ignore-case --name seçeneğini kullanırken büyük/küçük harf ayrımlarını yoksayar.
-n
--lookup=
-o
-p, --show-parents
--debug-info seçeneğinin =
--parent-recurse-depth=
--quiet STDOUT'a çıktı vermemek için --verify seçeneği ile birlikte kullanın.
-r
--show-section-sizes Tüm hata ayıklama bölümlerinin bayt cinsinden boyutlarını gösterir.
--show-sources Hata ayıklama bilgilerinde adı geçen tüm kaynak dosyaları yazdırır. Mümkün olduğunda mutlak yollar verilir.
--statistics Hata ayıklama bilgisi kalite metriklerini toplar ve sonuçları makine tarafından okunabilir tek satırlık JSON çıktısı olarak yazdırır. Çıktı biçimi aşağıdaki bölümde açıklanmıştır (İSTATİSTİK ÇIKTISININ BİÇİMİ).
--summarize-types Tür birimi girdilerinin açıklamasını kısaltır.
-t, --filter-child-tag Yalnızca DWARF etiketi (tag) belirtilen etiketlerden biri olan alt öğeleri dökümler. Örnek kullanım:
dwarfdump -t DW_TAG_structure_type -t DW_TAG_member -c
-x, --regex
--name ile arama yaparken tüm
-u, --uuid Her mimari için UUID değerini gösterir.
--diff Çıktıyı, iki farklı dosyadan gelen DWARF çıktılarını karşılaştırmak için daha uygun olan bir biçimde dökümler.
-v, --verbose Döküm alırken ayrıntılı bilgileri görüntüler. Bu, DWARF sorunlarının giderilmesine yardımcı olabilir.
--verify Derleme birimi zincirlerini, DIE ilişkileri grafiğini, adres aralıklarını ve daha fazlasını doğrulayarak DWARF bilgilerinin yapısını doğrular.
--verify-json=
--version Aracın sürümünü görüntüler.
--debug-abbrev, --debug-addr, --debug-aranges, --debug-cu-index, --debug-frame [=
--debug-macro seçeneği hem .debug_macro hem de .debug_macinfo bölümlerini yazdırır.
--debug-frame ve --eh-frame seçenekleri takma adlardır (alias); her iki bölümün de mevcut olduğu durumlarda tek bir komut her ikisini de çıktı olarak verir.
@
İstatistik Çıktısının Biçimi
--statistics seçeneği, işlenen hata ayıklama bilgilerinin kalite metriklerini temsil eden tek satırlık bir JSON çıktısı üretir. Bu metrikler, iki derleyici arasındaki değişiklikleri karşılaştırmak için, özellikle derleyicide yapılan bir değişikliğin hata ayıklama bilgisi kalitesi üzerindeki etkisini değerlendirmek için yararlıdır.
Çıktı, anahtar-değer çiftleri olarak biçimlendirilir. İlk çift bir sürüm numarası içerir. Anahtarlar için aşağıdaki adlandırma şeması kullanılır:
• variables ==> yerel değişkenler ve parametreler
• local vars ==> yerel değişkenler
• params ==> resmi parametreler
Birleştirilmiş (aggregated) değerler için aşağıdaki anahtarlar kullanılır:
• sum_of_all_variables(...) ==> tüm değişkenlere uygulanan toplam
• #bytes ==> bayt sayısı
• #variables - entry values ... ==> giriş değerleri hariç değişkenlerin sayısı vb.
JSON Doğrulama Çıktısının Biçimi
--verify-json tarafından oluşturulan JSON çıktısının biçimi şöyledir:
{ "error-categories": { "<ilk kategori açıklaması>": {"count": 1234}, "<sonraki kategori açıklaması>": {"count": 4321} }, "error-count": 5555 }
Hiçbir hata bildirilmediğinde aşağıdaki çıktı üretilir:
{ "error-categories": {}, "error-count": 0 }
Çıkış Durumu
dwarfdump, girdi dosyaları başarıyla ayrıştırılıp dökümlendiyse 0 döndürür. Aksi takdirde 1 döndürür.
Ayrıca Bakınız
dsymutil(1)
Yazar
LLVM Takımı tarafından sürdürülmektedir (https://llvm.org/).
Telif Hakkı
2003-2026, LLVM Projesi