[Logo der Universität Bayreuth]
Universität Bayreuth

Mathematisches
Institut



 Einleitung

 Erste Schritte

 Mail und News

 Drucken

 KDE

 LaTeX/TeX

 Linksammlung

 Linuxtools

 Netzwerk

 Programmieren

 Windows

 X Window

 Anträge

 Kontakt

Fehlersuche mit dem GNU Visual Debugger (GVD) <-




          <-  Start des GVD

<-  Beschreibung des GVD-Fensters

<-  Laden einer Core-Datei

<-  Start eines Programms im GVD

<-  Ausgabe vom Programmcode

<-  Haltepunkt (Breakpoint)

<-  schrittweiser Ablauf des Executables

<-  Verfolgung der Aufrufkette

<-  Untersuchung von Variablen

<-  dynamische Veränderung des Wertes einer Variablen

<-  Beenden des GVD







Ende des Executables in GVD

Am Ende des Programmlaufes in GVD meldet GVD normalerweise unter Windows "Program exited normally." in der Debugger-Console. Durchläuft man das Programm schrittweise, gibt es vorher noch die (normalen) Meldungen der Form
   0x0040120d in __mingw_CRTStartup ()
   Single stepping until exit from function __mingw_CRTStartup (),
   which has no line number information.
Vergleichen Sie die Screenshots

normales Ende des Executables in GVD

und

Ende des Executables in GVD nach schrittweisem Durchlauf

Beenden des GVD

Nachdem Sie fertig mit der Fehlersuche sind, können Sie den GVD beenden. Dafür haben Sie mehrere Möglichkeiten. Sie können einfach das GVD-Fenster schließen (ggf. vorher bei laufendem Executable dieses Fenster vorher schließen) oder den Menüpunkt "File --> Exit" anwählen. Sie können auch das Debugging des Programm unterbrechen, in dem Sie auf das Icon Interr. im Werkzeugfenster klicken.

Bei laufendem Executable (insbesondere während einer Eingabe) muss man zunächst den Menüpunkt "Program --> Interrupt" anwählen oder das entsprechende Icon im Werkzeugfenster anklicken, im Programmfenster (oder unter Linux in der Debug-Console) ggf. die Eingabe durch Eintippen eines Wertes beenden und dann mit dem Menüpunkt "File --> Detach" den Kontakt des GVD-Debuggers zum Programm unterbrechen. Unter Windows führt das u.U. zum typischen "Problembericht"-Fenster:

Fenster mit Problembericht bei Detach

Dieses Fenster kann dann durch Anklicken von "Nicht senden" geschlossen werden. Danach kann man GVD normal beenden.

Tipps zum Beenden von GVD und zum Neuerstellen des Executables bei laufendem GVD

Sollte der GVD hängen (kommt ab und zu vor im CIP-Pool-Raum), kann man auch mit dem Menüpunkt "File --> Close" GVD beenden.
Geht gar nichts mehr, muss der Taskmanager durch STRG+ALT+ENTF bemüht werden und der Prozess von GVD beendet werden (notfalls auch das noch laufende Executable "a.exe").

Läuft GVD (evtl. auch das durch GVD kontrollierte Executable), so kann es Probleme geben (selbst wenn das Executable nicht innerhalb von GVD läuft), wenn man in einem weiteren Fenster (z.B. Proton mit Shortcut oder in DOS-Box für MinGW) dasselbe Executable neu erstellen will (z.B. wegen geändertem Sourcecode). Das Erstellen des Executables kann dann für GCC scheitern (Meldung der Form: "Permission denied to create a.exe").
Deshalb sollte man vor dem Neuerstellen mit dem Menüpunkt "File --> Close" die Überwachung des Executables mit GVD beenden (GVD läuft noch) und dann erst neu compilieren. Anschließend kann durch den Menüpunkt "File --> Open Programm..." bzw. durch den Menüpunkt "File --> New Debugger..." wieder das vorher neu erstellte Executable von GVD überwacht werden.









top top

Robert Baier ([e-mail-Adresse von Robert Baier])
© 2003 Robert Baier;
© 1999-2002 Robert Baier, Sascha Herrmann
Debugger-Seiten: © 2003 Robert Baier, Ekue-sse Situ Tomety
[Seitenzähler] Last modified: 22.07.2015