Debugger: GDB 9.1 hört auf zusätzliche Kommandos

Neben weiteren Befehlen verarbeitet der GNU Debugger neuerdings mit Minusstrich eingeleitete Kommandooptionen.

In Pocket speichern vorlesen Druckansicht 19 Kommentare lesen
Debugger: GDB 9.1 hört auf zusätzliche Kommandos
Lesezeit: 2 Min.
Von
  • Rainald Menge-Sonnentag

Ein dreiviertel Jahr nach dem letzten Punktrelease 8.3 ist nun nach dem Überspringen von 9.0 die Version 9.1 des GNU Debugger (GDB) erschienen. Das Werkzeug hat einige neue Befehle im Repertoire und verbessert das Zusammenspiel mit den Programmiersprachen Python, Fortran und Ada.

Noch als experimentell gekennzeichnet und daher standardmäßig deaktiviert ist das Multithreading beim Laden der Symbole. Entwickler können es über maint set worker-threads unlimited einschalten. Bei den unterstützten Plattformen entfällt mit Solaris 10 die letzte Variante des Betriebssystems vor der Übernahme Suns durch Oracle. Auch mit der Prozessorserie Cell-Broadband-Engine arbeitet GDB 9.1 nicht mehr zusammen.

GDB 9.1 bringt neue Befehle mit und erweitert den allgemeinen Umgang mit ihnen. Mit | beziehungsweise pipe lässt sich die Ausgabe eines Befehls an ein Shell-Kommando übergeben. with erlaubt das Ausführen eines Befehls mit einem zusätzlich anzugebenden Wert.

Entwickler können über set logging debugredirect [on|off] einstellen, ob GDB die Ausgabe in die Logdatei umleitet. Mit set print raw-values [on|off] aktivieren beziehungsweise deaktivieren sie das sogenannte Pretty Printing für eine übersichtlichere Ausgabe komplexer Objekte.

Neuerdings verarbeitet der Debugger zudem über einen Minusstrich eingeleitete Optionen in der Form -OPT für Befehle. Die GDB-Entwickler wollen mittelfristig die meisten Befehle auf diese Struktur umstellen. Eine weitere grundsätzliche Änderungen ist, dass Kommandos neuerdings einen Punkt (.) im Namen haben dürfen.

Python 3.x funktioniert mit GDB 9.1 auch unter Windows, und das aktuelle Release hat einige Erweiterungen der Python-API an Bord. Unter anderem bringt der Typ gdb.Value neuerdings die Methode format_string mit, die den Wert als Zeichenkette ausgibt.

In Fortran-Code kann der GNU Debugger Breakpoints in verschachtelten Funktionen (Nested Functions) und Unterroutinen setzen. Beim Debuggen von Ada-Code zeigt GDB die Task-Namen häufiger an, darunter in Nachrichten beim Wechseln eines Tasks.

Weitere Neuerungen in GDB 9.1 lassen sich der Ankündigung entnehmen. Die vollständige Liste der Neuerungen findet sich in der NEWS-Datei. (rme)