GDB 18.1 bringt Non-Stop-Debugging unter Windows, streicht stabs
GDB 18.1, erschienen am 25. September, bringt Non-Stop-Debugging auf Windows 10+, neue save- und Umgebungsbefehle und entfernt das alte stabs-Debugformat.
4 Min. Lesezeit

Das GNU-Projekt hat am 25. September 2026 Version 18.1 von GDB veröffentlicht, seinem Debugger für die Kommandozeile. Die größten Änderungen betreffen Windows: Dort gibt es jetzt Non-Stop-Debugging unter Windows 10 und neuer. Die Version entfernt außerdem mehrere alte Debugformate. Einige ältere Builds lassen sich daher nicht mehr sauber laden.
Mit GDB kann man ein laufendes Programm anhalten, Zeile für Zeile durchgehen und seine Variablen untersuchen. Der Debugger unterstützt Ada, C, C++, Fortran, Go, Rust und viele andere Sprachen. Die folgenden Änderungen stammen aus der offiziellen Release-Ankündigung auf der Mailingliste gdb-announce, ergänzt um Details aus dem Bericht von LWN.
Was sich für Windows-Entwickler ändert
Laut der Ankündigung bekommt Windows in GDB 18.1 die meisten Verbesserungen. Das native Windows-Ziel, also GDB beim Debuggen eines Programms auf demselben Windows-Rechner, unterstützt jetzt den Non-Stop-Modus unter Windows 10 und neuer.
Im Non-Stop-Modus hält ein Thread an einem Haltepunkt an, während die anderen Threads des Programms weiterlaufen. Das ist wichtig für Server und GUI-Anwendungen. Dort kann das gleichzeitige Anhalten aller Threads genau den Fehler verdecken, den man sucht. Windows erhält außerdem Scheduler-Locking. Damit legt man fest, ob andere Threads laufen dürfen, während man einen einzelnen Schritt für Schritt ausführt.
GDB unter Windows kann jetzt auch Variablen im Thread-Local Storage lesen. Das sind Variablen, die für jeden Thread einen eigenen Wert haben. Die Ankündigung nennt außerdem 24-Bit-Truecolor im Windows Terminal, mit UTF-8-Text und Emoji. Dateipfade werden jetzt durchgehend mit Schrägstrichen ausgegeben.
Neue Befehle in GDB 18.1
Die Version bringt mehrere neue Befehle, die sowohl in der Ankündigung als auch in der Zusammenfassung von LWN stehen:
| Befehl | Funktion |
|---|---|
set/show/unset local-environment | Umgebung des untersuchten Programms verwalten |
save history | Befehlsverlauf in eine Datei schreiben |
save skip | Liste der Funktionen und Dateien speichern, die GDB beim Durchschreiten überspringt |
save user | Benutzerdefinierte Befehle speichern |
set/show progress-bars enabled | Fortschrittsbalken ein- oder ausschalten |
info proc environ | Umgebungsvariablen eines Linux-Prozesses anzeigen |
Die neue Option --no-escape-args übergibt Programmargumente, ohne sie zu maskieren. Argumente mit Zeilenumbrüchen funktionieren jetzt, wenn sie in Anführungszeichen stehen. Bei Extended-Remote-Zielen, bei denen GDB ein Programm auf einem anderen Rechner steuert, setzt GDB die entfernte ausführbare Datei jetzt automatisch.
LWN zufolge markiert info locals jetzt Variablen, die eine andere Variable gleichen Namens verdecken. Der Befehl zeigt außerdem, wo jede Variable gespeichert ist.
Python-API und neue Zielplattformen
GDB lässt sich mit Python skripten, und Version 18.1 erweitert diese Schnittstelle. Die Ankündigung nennt eine neue Klasse gdb.Corefile für die Arbeit mit Core-Dumps. Das sind Speicherabbilder, die ein abgestürztes Programm hinterlässt. Hinzu kommen eine Klasse gdb.Style und zwei neue Ereignisregister, selected_context und corefile_changed. Disassembler-Ausgaben aus Python können jetzt Formatierungen tragen.
Zwei neue Zielplattformen kommen hinzu. GNU/Linux auf MicroBlaze, einem kleinen Prozessordesign für FPGA-Chips, wird über gdbserver unterstützt. Ebenfalls neu ist AArch64 MinGW, also Windows auf 64-Bit-Arm, gebaut mit der MinGW-Toolchain. LWN ergänzt, dass AArch64 jetzt sein Floating-Point Mode Register, kurz FPMR, unterstützt.
Was GDB 18.1 entfernt
Laut der Ankündigung streicht GDB 18.1 eine Reihe älterer Formate und Plattformen:
- Die Debugformate stabs, mdebug und dbx
- Das Common Trace Format
- Ältere Versionen des Abschnitts
.gdb_index, eines Index, der das Laden von Symbolen beschleunigt - Version 1 von DWP, dem Paketformat für geteilte Debugdateien
- AIX 7.1
- Das 32-Bit-Ziel s390
Auf der positiven Seite enthalten .gdb_index-Abschnitte jetzt Typsymbole. Damit findet GDB Typen schneller. Der Quellcode steht auf dem FTP-Server von GNU bereit, als 22-MiB-Datei .tar.xz oder als 37-MiB-Datei .tar.gz.
Was das für Entwickler bedeutet
Prüfen Sie vor dem Upgrade Ihre Build-Flags. Stabs ist ein Debugformat aus der Zeit vor DWARF, dem Standard, den die meisten Compiler heute erzeugen. Die meisten modernen Toolchains nutzen stabs schon lange nicht mehr. Eine alte Embedded-Toolchain oder ein Legacy-Build-Skript übergibt aber vielleicht noch -gstabs. Dann kann GDB 18.1 diese Debuginformationen nicht mehr lesen. Stellen Sie in dem Fall zuerst auf DWARF um.
Dasselbe gilt für Setups mit geteilten Debugdateien. Wenn Ihr Team noch .dwp-Dateien im alten Format Version 1 aufbewahrt, bauen Sie sie vor dem Wechsel auf 18.1 neu. Erzeugen Sie auch alle .gdb_index-Abschnitte neu, die ein altes GDB angelegt hat. Das neuere Indexformat enthält auch Typen, der Neuaufbau lohnt sich also ohnehin.
Windows-Entwickler, die GDB für Multithreading-Code aufgegeben hatten, sollten es erneut versuchen. Mit Non-Stop-Modus und Scheduler-Locking lässt sich ein einzelner Worker-Thread anhalten, ohne den Rest des Programms einzufrieren.
Wer eine .gdbinit-Datei voller eigener Befehle pflegt, kann sie mit save user sichern. Mit save history geht außerdem eine lange Debugging-Sitzung nicht verloren, wenn GDB beendet wird. Teams, die Werkzeuge auf der Python-API von GDB aufbauen, sollten sich gdb.Corefile für Skripte ansehen, die Absturz-Dumps auswerten.
Bis Ihre Linux-Distribution 18.1 paketiert, können Sie GDB aus dem Quell-Tarball auf dem FTP-Server von GNU bauen.
Quellen
- GDB 18.1 released! - Sourceware gdb-announce
- GDB 18.1 released - LWN.net
Ähnliche Artikel

XSS in SourceHut-Build-Logs ermöglichte die Übernahme von Konten
Ein präpariertes Build-Log konnte Skript im Browser von SourceHut-Nutzern ausführen. ansi2html 1.9.4 behebt den Fehler CVE-2026-92973, der die Versionen 1.7.0 bis 1.9.3 betraf.

Wine 11.18 bringt Kerneltreiber, Staging repariert WoW64
Wine 11.18 erschien am 18. September mit 380 Commits und 21 Fehlerbehebungen. Wine-Staging trägt 273 zusätzliche Patches, zwei davon für WoW64-Dienste.

ReactOS 0.4.16 bringt einen grafischen Installer und Wine-10-Abgleich
ReactOS 0.4.16 erschien am 29. August 2026 nach rund 18 Monaten und 2.808 Commits. Neu sind ein grafischer Installer, ein neuer ATA-Treiber und der Abgleich mit Wine 10.