GDB 9 hata ayıklayıcı sürümü

tanıtıldı hata ayıklayıcı sürümü GDB 9.1 (9.x serisinin ilk sürümü, geliştirme için şube 9.0 kullanıldı). GDB, çeşitli donanımlarda (i386, amd64, ARM, Power, Sparc, RISC-V) çok çeşitli programlama dilleri (Ada, C, C++, Objective-C, Pascal, Go vb.) için kaynak düzeyinde hata ayıklamayı destekler vb.) ve yazılım platformları (GNU/Linux, *BSD, Unix, Windows, macOS).

Anahtar iyileştirmeler:

  • Solaris 10 ve Cell Broadband Engine platformlarına yönelik destek durduruldu;
  • Texas Instruments işlemcilerinde (pru-*-elf) kullanılan PRU (Programlanabilir Gerçek Zamanlı Birim) alt sisteminin yeni bir simülatörü eklendi;
  • Çok iş parçacıklı modda hata ayıklama sembollerinin hızlı yüklenmesi için deneysel bir mod eklendi ('bakım seti işçi iş parçacıkları sınırsız' ayarı aracılığıyla etkinleştirildi);
  • Komut isimlerinde '.' sembolünü kullanmak mümkündür;
  • Fortran'da iç içe geçmiş işlevler ve alt rutinler için kesme noktaları belirleme yeteneği eklendi;
  • Komutların tek bir stile getirilmesi ve okunabilirliğinin iyileştirilmesi için çalışmalar yapılmıştır;
  • Sekme tuşunu kullanarak otomatik tamamlamaya izin veren kısa çizgi karakterini ('-OPT') kullanarak komut argümanlarını iletmek için standart bir altyapı uygulandı;
  • "printf" ve "eval" komutları, programda doğrudan bir işlevi çağırmadan, C ve Ada stillerinde dizelerin çıktısını alma desteğini uygular;
  • "Bilgi kaynakları" komutundaki normal ifadeye göre çıktı dosyalarını filtrelemek için destek eklendi;
  • "Çerçeve bağımsız değişkenlerini yazdır" ayarında, "varlık" parametresi uygulanır; ayarlandığında, adı ve değeri görüntülemek yerine bağımsız değişkenler için yalnızca varlık göstergesi "..." görüntülenir;
  • arayüzde TUI "focus", "winheight", "+", "-", ">", "<" komutları artık büyük/küçük harfe duyarlıdır;
  • "Yazdır", "yazdır derle", "geri izleme", "çerçeve" komutları için
    uygula", "tfaas" ve "faas" seçenekleri genel ayarları geçersiz kılmak için uygulanmıştır (örneğin, "baskıyı ayarla […]" aracılığıyla ayarlananlar);

  • Bazı başlıkların çıktısını devre dışı bırakmak için "bilgi türleri" komutuna "-q" seçeneği eklendi;
  • Ayarlarda “sınırsız” değeri yerine artık “u” belirtebilirsiniz;
  • Yeni komutlar eklendi:
    • kendi önek komutlarınızı tanımlamak için "define-prefix";
    • "|" veya bir komutu çalıştırmak ve çıktıyı bir kabuk komutuna yönlendirmek için "pipe";
    • Belirtilen komutu geçici olarak değiştirilen ayarlarla çalıştırmak için “ile”;
    • GDB'den bir altyordamın çağrılıp çağrılamayacağını kontrol etmek için "arayabilir-arama işlevlerini ayarla";
    • "bitir" komutunu kullanırken dönüş değerinin görüntülenmesini kontrol etmek için "baskı bitirmeyi ayarla [açık|kapalı]";
    • iç içe geçmiş yapıların çıktısını sınırlamak için "baskı maksimum derinliğini ayarla";
    • Çıktı değerlerinin biçimlendirmesini etkinleştirmek/devre dışı bırakmak için “ham değerleri yazdırmayı ayarla [açık | kapalı]”;
    • Hata ayıklama çıktısının bir günlük dosyasına kaydedilmesini kontrol etmek için “günlük hata ayıklama yönlendirmesini ayarla [açık|kapalı]”;
    • Bir dizi yeni "stili ayarla" komutu;
    • Yığın çerçeve durumunu görüntülerken yazdırılması gereken bilgileri tanımlamak için "yazdırma çerçevesi bilgisini ayarla […]";
    • TUI (Metin Kullanıcı Arayüzü) arayüzünde kodu görüntülemek için kompakt modu etkinleştirmek üzere "tui kompakt kaynağını ayarla";
    • Fortran modülleri hakkında bilgi istemek için “bilgi modülleri […]”;
    • "Baskı ham çerçeve bağımsız değişkenlerini ayarla/göster" yerine, "ham çerçeve bağımsız değişkenlerini yazdır/göster" komutu önerilir (ayırıcı olarak boşluk yerine kısa çizgi kullanır);
  • Kontrol yazılımı arayüzünde GDB/MI yeni komutlar eklendi “-complete”, “-catch-throw”, “-catch-rethrow”, “-catch-catch”, “-symbol-info-functions”, “-symbol-info-types”,
    "-symbol-info-variables", "-symbol-info-modules", "-symbol-info-module-functions" ve "-symbol-info-module-variables" aynı GDB komutlarına eşdeğerdir. Varsayılan olarak MI yorumlayıcısının üçüncü sürümü etkinleştirilmiştir (-i=mi3);

  • Yeni yerleşik değişkenler eklendi:
    • $_gdb_major, $_gdb_minor;
    • $_gdb_setting, $_gdb_setting_str, $_gdb_maint_setting,
    • $_gdb_maint_setting_str
    • $_cimag, $_creal
    • $_shell_exitcode, $_shell_exitsignal
  • Gdbinit sistem dosyalarının yolunu belirlemek için yapılandırma derleme komut dosyasına “--with-system-gdbinit-dir” seçeneği eklendi;
  • Python API'sinde bir takım iyileştirmeler yapıldı. Windows'ta Python 3 ile derleme yeteneği eklendi;
  • Montaj ortamına yönelik gereksinimler artırıldı. GDB ve GDBserver oluşturmak artık en az GNU'nun 3.82 olmasını gerektiriyor. Harici bir okuma satırı kitaplığıyla oluştururken en az GNU okuma satırı 7.0 gereklidir.

Kaynak: opennet.ru

Yorum ekle