Debugger: GDB 9.1 hört auf zusätzliche Kommandos
Neben weiteren Befehlen verarbeitet der GNU Debugger neuerdings mit Minusstrich eingeleitete Kommandooptionen.
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.
Erweiterte Befehlsliste
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.
Einzelne Sprachen
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)