Release des Debuggers GDB 14

Die neue Version des Debuggers GDB 14.1 wurde veröffentlicht (dies ist der erste Release der Serie 14.x, die Version 14.0 wurde fĂŒr die Entwicklung genutzt). 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 Hardware- (i386, amd64, ARM, Power, Sparc, RISC-V usw.) und Softwareplattformen (GNU/Linux, *BSD, Unix, Windows, macOS).

Wesentliche Verbesserungen:

  • Der Code wurde auf die Verwendung des Standards C++17 umgestellt. Zum Bau von GDB ist jetzt ein Compiler erforderlich, der C++17 unterstĂŒtzt (mindestens GCC 9).
  • Informationen zur main-Funktion wurden in den Index aufgenommen, was den Start mit einigen großen ausfĂŒhrbaren Dateien beschleunigt.
  • Die UnterstĂŒtzung fĂŒr die Betriebssysteme AIX 4.x, 5.x und 6.x wurde eingestellt (als minimal unterstĂŒtzte Version von AIX wird Release 7.1 ausgewiesen).
  • AnfĂ€ngliche integrierte UnterstĂŒtzung fĂŒr das DAP (Debugger Adapter Protocol) wurde hinzugefĂŒgt.
  • UnterstĂŒtzung fĂŒr die Umgebungsvariable NO_COLOR wurde hinzugefĂŒgt.
  • AnfĂ€ngliche UnterstĂŒtzung fĂŒr Ganzzahltypen grĂ¶ĂŸer als 64 Bit wurde hinzugefĂŒgt.
  • UnterstĂŒtzung fĂŒr Haltepunkte, die an einzelnen Debugging-Objekten festgebunden sind (bei der Fehlerbehebung mit mehreren Prozessen), wurde eingefĂŒhrt.
  • Die Funktion „$_shell“ wurde hinzugefĂŒgt, um einen Befehl in der Kommandozeile auszufĂŒhren und das Ergebnis zurĂŒckzugeben.
  • Verbesserungen der Python-API wurden vorgenommen:
    • Die Klassen gdb.Thread, gdb.unwinder.FrameId und gdb.ValuePrinter wurden hinzugefĂŒgt.
    • Es wurden Attribute wie gdb.Inferior.arguments, gdb.Inferior.main_name, gdb.Breakpoint.inferior, gdb.Progspace.symbol_file, gdb.Progspace.executable_filename hinzugefĂŒgt.
    • Die Funktionen gdb.execute_mi(COMMAND, [ARG]
) und gdb.block_signals() wurden hinzugefĂŒgt.
    • Die Methoden gdb.Frame.static_link, gdb.Inferior ‘clear_env’, ‘set_env’ und ‘unset_env’, gdb.Type ‘is_array_like’ und ‘is_string_like’, gdb.Value ‘assign’, gdb.Value ‘to_array’, gdb.Progspace ‘objfile_for_address’, gdb.LazyString __str__ wurden hinzugefĂŒgt. Ereignisse wie gdb.ThreadExitedEvent, gdb.ExecutableChangedEvent, gdb.NewProgspaceEvent, gdb.FreeProgspaceEvent wurden hinzugefĂŒgt.
  • Die Möglichkeit, bestimmte Funktionen fĂŒr entfernte Debugging-Ziele ein- und auszuschalten, wurde hinzugefĂŒgt.
  • Die UnterstĂŒtzung fĂŒr die AArch64-Architektur wurde verbessert. UnterstĂŒtzung fĂŒr die Erweiterungen SME (Scalable Matrix Extension) und SME2 wurde hinzugefĂŒgt.
  • Die UnterstĂŒtzung fĂŒr die Programmiersprache Ada und die Ada 2022-Spezifikation wurde verbessert.
  • Der Befehl ‚list‘ unterstĂŒtzt nun das Argument ‘.’ zur Anzeige des Standorts des AusfĂŒhrungsorts im aktuellen Stapelrahmen.
  • Den Befehlen printf und dprintf wurde der Formatbezeichner ‘%V’ hinzugefĂŒgt.
  • Im Befehl printf ist die GrĂ¶ĂŸe des aus dem Debugging-Objekt extrahierten Strings auf den Wert der Einstellung ‘max-value-size’ begrenzt.
  • Die neue Option "—additional-debug-dirs=PATH" wurde hinzugefĂŒgt, um den Standardwert fĂŒr das Parameter ‘debug-file-directory’ festzulegen.
  • Der neue Befehl „info main“ wurde hinzugefĂŒgt, um das Hauptsymbol auszulesen, das den Einstiegspunkt im Programm angibt.
  • Neue Befehle hinzugefĂŒgt:
    • "set debug breakpoint on|off"
    • "set tui mouse-events [on|off]"
    • "set always-read-ctf on|off"
    • "maintenance print record-instruction [ N ]"
    • "maintenance info frame-unwinders"
    • "maintenance wait-for-index-cache"

Quelle: opennet.ru

Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Servern đŸ”„ Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Servern | ProHoster