GNU Debugger

De-facto-Standard-Debugger von Linux-Systemen
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 17. Juni 2015 um 15:50 Uhr durch Deadlyhappen (Diskussion | Beiträge) (Kategorie eingefügt). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Das UNIX-Programm GDB – der GNU Debugger – ist der De-facto-Standard-Debugger von Linux-Systemen und wurde vom GNU-Projekt entwickelt. GDB ist auf viele Systeme portiert worden (siehe unten) und unterstützt die Programmiersprachen C, C++, Objective-C, FORTRAN, Java, Pascal, Modula-2, Ada, D und Go.[3] GDB ist freie Software und steht unter der GNU General Public License (GPL). Der GDB orientiert sich in seinem Interface an dem Debugger dbx, der ursprünglich von BSD-Unix stammt und mittlerweile als Bestandteil von Oracles Solaris Studio ausgeliefert wird.

GDB

Logo
Screenshot
Bildschirmfoto des GNU Debuggers
Basisdaten

Maintainer Joël Brobecker[1]
Entwickler GNU-Projekt
Erscheinungsjahr 1986[2]
Aktuelle Version 7.8
(29. Juli 2014)
Betriebssystem Unix-Derivate (u. a. Linux), Windows
Programmier­sprache C, Scheme
Kategorie Debugger
Lizenz GPL
deutschsprachig nein
gnu.org/software/gdb/
Beispielausgabe bei der Fehlersuche mit GDB

GDB bietet die üblichen Möglichkeiten zur Ablaufverfolgung wie Breakpoints oder die Ausgabe des Stacktrace, und ermöglicht ein Eingreifen in die Ausführung von Programmen. GDB ermöglicht es Benutzern beispielsweise, die Variablen des Programms zu manipulieren oder Funktionen unabhängig vom normalen Programmablauf aufzurufen. Seit Version 7.0 ist die Ablaufverfolgung nicht nur vorwärts sondern auch rückwärts möglich (Reverse Debugging)[4]. Außerdem kann GDB mit Python und GNU Guile automatisiert werden.

Der Debugger besitzt keine eigene grafische Oberfläche, sondern nutzt die Standard-Ein/Ausgabe mit GNU readline, die optional aber durch eine auf der curses-Bibliothek basierende TUI ergänzt werden kann. Daneben gibt es einige grafische Debugging-Oberflächen, die den GDB als Backend verwenden, zum Beispiel das Eclipse-Plugin C/C++-Development Tools, der ddd, der ncurses-basierte cgdb, Insight oder Emacs im „GUD mode“. Auch Xcode nutzte den GNU Debugger. Seit Xcode Version 5 wird GDB nicht mehr offiziell durch die OS X Entwicklungsumgebung unterstützt.

Einige andere Tools arbeiten mit GDB zusammen, z. B. Speicherleck-Detektoren.

GDB unterstützt unter anderem folgende Architekturen:

Literatur

Einzelnachweise

  1. www.sourceware.org. (abgerufen am 3. März 2024).
  2. Richard Stallman lecture at the Royal Institute of Technology, Sweden (1986-10-30). (abgerufen am 9. Oktober 2019): „Then after GNU Emacs was reasonably stable, which took all in all about a year and a half, I started getting back to other parts of the system. I developed a debugger which I called GDB which is a symbolic debugger for C code, which recently entered distribution. Now this debugger is to a large extent in the spirit of DBX, which is a debugger that comes with Berkeley Unix.
  3. sourceware.org
  4. Reverse Debugging with GDB. Abgerufen am 20. Januar 2014.
  5. blackfin.uclinux.org