GDB 8.3-Debugger-Version

Eingereicht von Debugger-Version GDB 8.3, unterstützt das Debuggen auf Quellebene für eine Vielzahl von Programmiersprachen (Ada, C, C++, Objective-C, Pascal, Go usw.) auf verschiedener Hardware (i386, amd64, ARM, Power, Sparc, RISC-V). usw.) und Softwareplattformen (GNU/Linux, *BSD, Unix, Windows, macOS).

Taste Verbesserungen:

  • Die CLI- und TUI-Schnittstellen verfügen nun über die Möglichkeit, den Terminalstil zu definieren (der Befehl „set style“ wurde hinzugefügt). Mit GNU Highlight ist die Hervorhebung des Quelltexts implementiert;
  • Implementierte experimentelle Unterstützung für das Kompilieren und Ersetzen von C++-Quellcode in einem GDB-gesteuerten Prozess
    (weniger). Um zu funktionieren, benötigen Sie mindestens eine mit libcp7.1.so kompilierte Version von GCC 1b;

  • IPv6-Unterstützung wurde zu GDB und GDBserver hinzugefügt. Um IPv6-Adressen festzulegen, verwenden Sie das Format „[ADRESSE]:PORT“.
  • Für RISC-V-Zielsysteme wurde Unterstützung für die Beschreibung des Ziels im XML-Format hinzugefügt (Zielbeschreibungsformat);
  • Die FreeBSD-Plattform bietet Unterstützung für die Installation von Abfangpunkten
    (Catchpoint) für Systemaufrufe unter Verwendung ihrer Aliase, die für verschiedene ABIs spezifisch sind (für „kevent“ steht beispielsweise ein Alias ​​„freebsd11_kevent“ zur Bindung an das alte ABI zur Verfügung);

  • Dem Befehl „target remote“ wurde Unterstützung für Unix-Sockets (Unix-Domänen-Socket) hinzugefügt;
  • Möglichkeit hinzugefügt, alle von einem Prozess geöffneten Dateien anzuzeigen (Befehl „info proc files“);
  • Es wurde die Möglichkeit implementiert, DWARF-Symbolindizes automatisch auf der Festplatte zu speichern, um das spätere Laden derselben ausführbaren Datei zu beschleunigen.
  • Unterstützung für den Zugriff auf die PPR-, DSCR-, TAR-, EBB/PMU- und HTM-Register zum GDBserver für die PowerPC GNU/Linux-Plattform hinzugefügt;
  • Neue Befehle „Set/Show Debug-Compile-Cplus-Typen“ und hinzugefügt
    „set/show debug skip“, um die Ausgabe von Daten über C++-Typkonvertierungen und Informationen über übersprungene Dateien und Funktionen zu konfigurieren;

  • Die Befehle „frame apply COMMAND“, „taas COMMAND“, „faas COMMAND“ und „tfaas COMMAND“ zum Anwenden von Befehlen auf Stack-Frames und Threads wurden hinzugefügt.
  • Es wurden Verbesserungen an den Befehlen „Frame“, „Select-Frame“, „Info Frame“ vorgenommen.
    — „Info-Funktionen“, „Info-Typen“, „Info-Variablen“, „Info-Thread“, „Info-Proc“;

  • Bei der Ausführung im Batch-Modus gibt GDB jetzt den Fehlercode 1 zurück, wenn der letzte Befehl fehlschlägt;
  • Es wurde die Möglichkeit hinzugefügt, GDB mit dem von GCC bereitgestellten Undefined Behavior Sanitizer zu erstellen;
  • Basissystemeinstellungen (native Konfiguration, zum Debuggen auf demselben System) für die Plattformen RISC-V GNU/Linux (riscv*-*-linux*) und RISC-V FreeBSD (riscv*-*-freebsd*) hinzugefügt;
  • Hinzugefügte Zielkonfigurationen: CSKY ELF (csky*-*-elf), CSKY GNU/Linux (csky*-*-linux), NXP S12Z ELF (s12z-*-elf), OpenRISC GNU/Linux (or1k *-*-linux *), RISC-V GNU/Linux (riscv*-*-linux*) und RISC-V FreeBSD (riscv*-*-freebsd*);
  • Das Debuggen auf demselben System unter Windows erfordert jetzt Windows XP oder neuere Editionen;
  • Für die Verwendung der Python-API ist jetzt Python 2.6 oder höher erforderlich.

Source: opennet.ru

Kommentar hinzufügen