GDB 14.1 zaten yayınlandı ve bunlar onun yeni özellikleri

GNU Hata Ayıklayıcı

GNU Hata Ayıklayıcı, GNU derleyicisi için standart hata ayıklayıcıdır. Çeşitli Unix platformlarında kullanılabilen taşınabilir bir hata ayıklayıcıdır.

geçenlerde GDB 14.1 hata ayıklayıcısının yeni sürümünün yayımlandığı duyurulduBu, 14 serisinin ilk sürümüdür ve çok sayıda yeni fonksiyon, özellik, sınıf ve olayın yanı sıra destek iyileştirmeleri, hata düzeltmeleri ve daha fazlasının eklendiği sürümdür.

GDB'yi bilmeyenler için şunu bilmelisiniz: GNU projesi için bir hata ayıklayıcıdırve bu hata ayıklayıcı, başka bir program çalışırken "içinde" neler olduğunu "görmenize" veya bir hata oluştuğunda başka bir programın ne yaptığını "görmenize" olanak tanır.

GDB dört ana türde şeyi yapabilir (bunları destekleyen diğer şeylere ek olarak) kullanıcının programların yürütülmesindeki hataları tespit etmesine yardımcı olmak için:

  1. Davranışını etkileyebilecek herhangi bir şeyi belirterek bir programı başlatın.
  2. Belirli koşullar altında programı durdurma özelliğine sahiptir.
  3. Program durdurulduğunda ne olduğunu inceleyin.
  4. Kullanıcının bir hatanın etkilerini düzeltmeyi deneyebilmesi ve diğerini öğrenmeye devam edebilmesi için programdaki bazı şeyleri değiştirin.

Bu programlar GDB ile aynı makinede (yerel), başka bir makinede (uzak) veya bir simülatörde çalışıyor olabilir. GDB, UNIX ve Microsoft Windows'un yanı sıra macOS'un en popüler varyantlarında çalışabilir.

GDB çok çeşitli diller için kaynak düzeyinde hata ayıklamayı destekler programlama, örneğin: Ada, Assembly, C, C++, D, Fortran, Go, OpenCL, Objective-C, Modula-2, Pascal ve Rust.

GDB 14.1'in başlıca yeni özellikleri

GDB 14.1'in sunduğu bu yeni versiyonda, için ilk entegre destek adaptör protokolünde hata ayıklama (DAP) Microsoft tarafından geliştirildi ve bu, genel bir hata ayıklayıcının uygulanmasına olanak tanır, böylece geliştirme araçları, hata ayıklama bağdaştırıcıları aracılığıyla farklı hata ayıklayıcılarla iletişim kurabilir, bu da birden fazla geliştirme aracında yeniden kullanılabilir. Temel olarak, farklı araçlarda yeni bir hata ayıklayıcıyı destekleme çabasına indirgenir.

Bu yeni sürümde öne çıkan değişikliklerden bir diğeri de Uygulanan iyileştirmeleri desteklemek, benzeri 64 bitten büyük tamsayı türleri için başlangıç ​​desteği, bireysel uzak hedef işlevlerinin etkinleştirilmesi veya devre dışı bırakılması desteğinin yanı sıra Ada için geliştirilmiş destek Ada 2022 için 'Enum_Rep ve 'Enum_Val' özellikleri.

Ayrıca GDB'nin artık NO_COLOR ortam değişkenini tanıyor ve vardır Geliştirilmiş AArch64 desteği, KOBİ ve KOBİ2 uzantısı için ilk destek eklendiğinden beri.

Ayrıca, GDB özellikleri ve ayarları kaldırıldı yeni sürümde zaten desteklenenler, örneğin GDB 14.1 artık AiX 4.x, 5.x ve 6.x ile uyumlu değil, GDB/MI sürüm 1 desteği kaldırıldı.

Kabukta bir komutu yürütmek için $_shell” işlevi eklendi ve sonucu döndürürseniz, "list" komutu artık geçerli yığın çerçevesinde yürütme noktasının konumunu yazdırmak için '.'yi argüman olarak kabul eder, printf ve dprintf komutlarının çıktı formatına »%V» eklendi, Printf komutu artık 'max-value-size' ayarının değerinden daha azıyla elde edilen dizelerin boyutunu sınırlıyor ve yeni hata ayıklama ve bakım komutları eklendi.

Python desteği iyileştirmeleri hakkında, bu en çok alınan şeydi ve aşağıdakiler öne çıkıyor:

  • Yeni sınıflar: gdb.Thread, gdb.unwinder.FrameId, gdb.ValuePrinter
  • Yeni özellikler: gdb.Lower.argümanlar, bu, eğer biliniyorsa, komut satırı argümanlarını altta tutar, gdb.Lower.main_name, Eğer biliniyorsa, alttaki 'ana'nın adını içeren, gdb.Breakpoint.Lower, gdb.Progspace.symbol_file, gdb.Progspace.executable_filename
  • Nuevas fonksiyonları: gdb.execute_mi(KOMUT, [ARG]…), gdb.block_signals()
  • Yeni yöntemler: gdb.Value 'to_array', gdb.Progspace 'objfile_for_address', 'gdb.Frame.static_link, gdb.Inferior 'clear_env', 'set_env' ve 'unset_env' 
  • Yeni etkinlikler: gdb.ThreadExitedEvent, gdb.ExecutableChangedEvent gdb.NewProgspaceEvent ve gdb.FreeProgspaceEvent.
  • gdb.disassembler modülünün Disassembler API'si, stil desteği içerecek şekilde genişletildi
    gdb.parse_and_eval
  • gdb.unwinder.Unwinder.enabled özelliği artık yalnızca 'bool' türündeki değerleri kabul edebiliyor.
    Artık gdb.disassembler.DisassemblerResult Türünü alt sınıflandırmak mümkün değildir.

Son olarak, onun hakkında daha fazla bilgi edinmekle ilgileniyorsanayrıntılarını kontrol edebilirsiniz. aşağıdaki bağlantı.


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.