Release des Debuggers GDB 15

Die Veröffentlichung des Debuggers GDB 15.1 wurde vorgestellt (die erste Veröffentlichung der Reihe 15.x, Branch 15.0 wurde fĂŒr die Entwicklung verwendet). GDB unterstĂŒtzt das Debugging auf Quellcodeebene fĂŒr eine Vielzahl von Programmiersprachen (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust usw.) auf verschiedenen Hardwareplattformen (i386, amd64, ARM, Power, Sparc, RISC-V usw.) und Softwareplattformen (GNU/Linux, *BSD, Unix, Windows, macOS).

Wesentliche Verbesserungen:

  • FĂŒr den Build von GDB und GDBserver ist jetzt ein Compiler erforderlich, der C++17 unterstĂŒtzt (mindestens GCC 9).
  • Verbesserungen im Python-API wurden vorgenommen. Funktionen wie gdb.notify_mi, gdb.missing_debug.register_handler und gdb.interrupt, die Klasse gdb.missing_debug.MissingDebugInfo, das Modul db.missing_debug, die Attribute gdb.Value.bytes und gdb.InferiorThread.ptid_string sowie die Konstanten gdb.SYMBOL_TYPE_DOMAIN, gdb.SYMBOL_FUNCTION_DOMAIN und gdb.SEARCH_*_DOMAIN wurden hinzugefĂŒgt. In den Objekten gdb.Inferior und gdb.InferiorThread wurde die Möglichkeit zur HinzufĂŒgung benutzerdefinierter Attribute implementiert.
  • Die Implementierung des DAP (Debugger Adapter Protocol) wird fortgesetzt. Der Befehl „set debug dap-log-level“ wurde hinzugefĂŒgt, um das Logging fĂŒr DAP zu steuern. UnterstĂŒtzung fĂŒr die Anfrage „cancel“ sowie die Möglichkeit zur Erstellung des Ereignisses „process“ wurde hinzugefĂŒgt.
  • Im Protokoll fĂŒr Remote-Debugging wurde die UnterstĂŒtzung fĂŒr die Pakete QThreadOptions und qIsAddressTagged hinzugefĂŒgt, sowie der Befehl „set/show remote thread-options-packet“ implementiert.
  • In GDBserver wurde die UnterstĂŒtzung fĂŒr die Optionen „—remote-debug“ und „—event-loop-debug“ sowie die Befehle ‘monitor set remote-debug’ und ‘monitor set event-loop-debug’ eingestellt, stattdessen wurde die Möglichkeit, eine durch Kommas getrennte Liste von Komponenten zum Debuggen (all, threads, event-loop und remote) in der Option „—debug“ zu ĂŒbergeben, implementiert. Ebenso wurde die Möglichkeit zur Angabe von Komponenten im Befehl ‘monitor set debug’ umgesetzt.
  • Im Index wurde die Information ĂŒber die Funktion main hinzugefĂŒgt, was den Start bei der Verwendung mit einigen großen ausfĂŒhrbaren Dateien beschleunigt.
  • Die MPX-Befehle „show/set mpx bound“ wurden als veraltet erklĂ€rt, die UnterstĂŒtzung wurde 2019 von Intel eingestellt.
  • Neue Befehle wurden hinzugefĂŒgt:
    • „set/show direct-call-timeout“
    • „set/show indirect-call-timeout“
    • „set/show unwind-on-timeout on|off“
    • „set/show unwind-on-signal on|off“
  • In den Befehlen „gcore“ und „generate-core-file“ wurde die UnterstĂŒtzung fĂŒr die Optimierung der Speicherung leerer Bereiche in den generierten Core-Dateien hinzugefĂŒgt.

Quelle: opennet.ru

60GB SSD 8Gb DDR4