diff options
Diffstat (limited to 'doc/de/index.html')
-rw-r--r-- | doc/de/index.html | 190 |
1 files changed, 190 insertions, 0 deletions
diff --git a/doc/de/index.html b/doc/de/index.html new file mode 100644 index 0000000..5a69b7e --- /dev/null +++ b/doc/de/index.html @@ -0,0 +1,190 @@ +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> + <meta name="GENERATOR" content="Mozilla/4.74 [en] (X11; U; Linux 2.2.16-SMP i686) [Netscape]"> + <meta name="Author" content="Johannes Sixt"> + <title>KDbg - Benutzerhandbuch</title> +</head> +<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E" alink="#FF0000"> + +<h1> +KDbg - Benutzerhandbuch</h1> + +<h2> +Inhalt</h2> + +<ul> +<li> +<a href="#Introduction">Einleitung</a></li> + +<li> +<a href="#UsingKDbg">Mit KDbg arbeiten</a></li> + +<li> +<a href="#InfoWindows">Die Informationsfenster von KDbg</a></li> + +<li> +<a href="#TipsTricks">Tipps und so weiter</a></li> + +<li> +Für Fortgeschrittene: <a href="../../en/kdbg/types.html">Typentabellen</a> +(nur Englisch)</li> + +<li> +<a href="#KnownProblems">Bekannte Probleme</a></li> + +<li> +<a href="#Author">Autor</a></li> +</ul> + +<hr> +<h2> +<a NAME="Introduction"></a>Einleitung</h2> +KDbg ist eine grafische Benutzeroberfläche für <tt>gdb</tt>, +den GNU-Debugger. +<p>Das bedeutet, dass KDbg selbst nicht der Debugger ist. Vielmehr kommuniziert +KDbg mit <tt>gdb</tt>, indem Befehlszeilen and diesen geschickt werden +und die Ausgabe, wie z.B. Variablenwerte, entgegengenommen werden. Die +Menübefehle und Mausklicks werden in <tt>gdb</tt>-Befehle umgesetzt, +und die Ausgabe von <tt>gdb</tt> wird in (mehr oder weniger) sichtbare +Information umgesetzt, wie zum Beispiel die Struktur von Variablen. +<p>Eine Folge davon ist, dass KDbg vollständig von den Fähigkeiten +des verwendeten Befehlszeilendebuggers, <tt>gdb</tt>, abhängig ist. +KDbg kann nicht mehr als <tt>gdb</tt> leisten. Wenn Sie zum Beispiel einen +<tt>gdb</tt> +haben, der Programme mit Threads nicht unterstützt, dann kann auch +KDbg das nicht (obwohl ein Threads-Fenster vorhanden ist). +<h2> +<a NAME="UsingKDbg"></a>Mit KDbg arbeiten</h2> +Bevor Sie mit der Arbeit beginnen, sollten Sie die <a href="globaloptions.html">globalen +Einstellungen</a> prüfen, indem Sie <i>Datei|Globale Einstellungen</i> +aufrufen. +<h4> +Ein zu debuggendes Program angeben</h4> +Um ein Programm zu debuggen, wählen Sie <i>Datei|Programm</i>. Wenn +Sie das Programm schon einmal debuggt haben, können Sie es auch aus +der Liste unter <i>Datei|Zuletzt göffnete Programme</i> wählen. +Das Programm wird jetzt geladen. +<p>Wenn Sie einen Core-Dump verwenden wollen, müssen Sie zuerst das +Programm, das den Core-Dump erzeugt hat wie gerade erwähnt laden, +dann wählen Sie <i>Datei|Core dump</i> aus dem Menü. KDbg zeigt +die Stelle an, die den Core-Dump verursacht hat. +<p>Sie können nun Haltepunkte setzen, indem Sie die Einträge +im Menü <i>Haltepunkt</i> oder im Rechte-Maus-Menü oder in der +<a href="breakptlist.html">Liste +der Haltepunkte</a> verwenden. +<p>Sie können auch <a href="pgmsettings.html">programmspezifische +Einstellungen</a> vornehmen, indem Sie <i>Datei|Einstellungen</i> wählen. +<h4> +Das Programm ausführen</h4> +Nun führen Sie das Programm aus, indem Sie <i>Ausführung|Ausführen</i> +wählen. Das Programm arbeitet nun wie gewöhnlich, bis es beendet +wird, auf einen Haltepunkt oder Watchpoint trifft, oder ein Signal empfängt. +<p>Sie können das Programm mit Argumenten ausführen, ein Arbeitsverzeichnis +festlegen und auch Umgebungsvariablen definieren. Dazu wählen Sie +<i>Ausführung|Argumente</i> +und machen Ihre Angaben im <a href="argspwdenv.html">Programmargumente-Dialog</a>. +<p>Weiters können Sie sich in ein Programm einhängen (<i>attachen</i>), +das bereits ausgeführt wird. Dazu laden Sie das Programm zuerst wie +oben beschrieben, dann wählen Sie <i>Ausführung|Attachen</i>. +Geben Sie die Prozessnummer an und klicken Sie <i>OK</i>. Das Programm +wird jetzt angehalten (aber nicht beendet), und der derzeitige Stand des +Programms wird im <a href="sourcecode.html">Quellcode-Fenster</a> angezeigt. +<h4> +Das Programm wurde angehalten - was nun?</h4> +Wenn das Programm an einem Haltepunkt, Watchpoint oder wegen eines Signals +angehalten wird, zeigt das <a href="sourcecode.html">Quellcode-Fenster</a> +die Zeile, in der das Programm gerade arbeitete. Es passiert häufig, +dass das Programm wegen eine Signals (oftmals <tt>SIGSEGV</tt>, Speicherzugriffsfehler) +in einer Funktion angehalten wird, die sich nicht in jenem Programmteil +befindet, den Sie geschrieben haben. In diesem Fall betrachten Sie das +<a href="stack.html">Stack-Fenster</a> +genauer: Suchen Sie nach einer Funktion, die Sie geschrieben haben (beginnen +Sie am oberen Ende) und klicken Sie darauf. Das bringt Sie an eine Stelle, +an der Sie mit der Suche nach dem tatsächlichen Programmfehler beginnen +können. +<p>Im Menü <i>Ausführung</i> finden Sie Befehle, die Sie zum +Ausführen und schrittweisen Abarbeiten des Programms verwenden. Weiters +können Sie das laufende Programm unterbrechen. Die wichtigen Befehle +können auch mit Funktionstasten gegeben werden. Zum effizienten Arbeiten +empfehle ich, dass Sie sich diese Tasten eingewöhnen. +<br><font size=-1>Diese Funktionen sind nicht konfigurierbar, aber vielleicht +wollen Sie ein Stückchen Code beisteuern, mit dem das geht?</font> +<p>Im Menü <i>Haltepunkt</i> finden Sie Befehle zum Setzen, Entfernen, +Aktivieren und Inaktivieren von permanenten und temporären Haltepunkten. +Natürlich können Sie auch eine <a href="breakptlist.html">Liste +der Haltepunkte</a> anzeigen. Sie können einen Haltepunkt auch setzen, +indem Sie mit der Maus in den Freiraum links der entsprechenden Quellcode-Zeile +klicken (mit der linken Maustaste); weiters können sie einen vorhandenen +Haltepunkt mit der mittleren Maustaste aktivieren und deaktivieren. +<p>Das Zahnrad in der Werkzeugleiste zeigt an, ob <tt>gdb</tt> gerade arbeitet: +Dies ist der Fall, wenn es rotiert. Solange es schnell rotiert, nimmt KDbg +kein Eingaben an; wenn es langsam rotiert, aktualisiert KDbg gerade alle +Variablenanzeigen. +<h2> +<a NAME="InfoWindows"></a>Die Informationsfenster von KDbg</h2> +KDbg zeigt Information in einer Reihe verschiedener Fenster an. Im Menü +<i>Ansicht</i> +finden Sie die Befehle, die diese Fenster anzeigen und schliessen. Es handelt +sich dabei um <i>dockende</i> Fenster, sodass Sie deren Anordnung beliebig +verändern können. +<ul> +<li> +<a href="sourcecode.html">Das Quellcode-Fenster</a></li> + +<li> +<a href="localvars.html">Lokale Variablen</a></li> + +<li> +<a href="stack.html">Der Programm-Stack</a></li> + +<li> +<a href="watches.html">Ausdrücke (<i>Watches</i>)</a></li> + +<li> +<a href="breakptlist.html">Die Liste der Haltepunkte</a></li> + +<li> +<a href="pgmoutput.html">Das Programmausgabefenster</a></li> + +<li> +<a href="registers.html">Die Registerinhalt</a></li> + +<li> +<a href="memory.html">Der Speicherinhalt</a></li> + +<li> +<a href="threads.html">Die Programm-Threads</a></li> +</ul> + +<h2> +<a NAME="TipsTricks"></a>Tipps und so weiter</h2> + +<ul> +<li> +<a href="tips.html">Tipps</a></li> + +<li> +<a href="howdoi.html">Wie kann ich...?</a></li> +</ul> + +<h2> +<a NAME="KnownProblems"></a>Bekannte Probleme</h2> +<tt>gdb </tt>4.16 hat Probleme bei der Handhabung von C++-Klassen mit virtuellen +Basisklassen. (Diese kommen häufig in CORBA-Programmen vor.) Gdb stürzt +dabei häufig aufgrund eines Speicherzugriffsfehlers ab. KDbg erkennt, +wenn <tt>gdb</tt> unerwartet beendet wird. Leider lässt sich nicht +wirklich was dagegen unternehmen. Sie müssen <tt>gdb</tt> mittels +<i>Datei|Programm</i> +neu starten, das heißt auch für die Debug-Sitzung zurück +an den Start :-(. +<p>Die Typerkennung von KDbg arbeitet nur, wenn die Bibilotheken dynamisch +ins Programm gebunden sind. +<h2> +<a NAME="Author"></a>Autor</h2> +KDbg wurde von <a href="mailto:j6t@kdbg.org">Johannes Sixt</a> +mit vielen weiteren Helfern geschrieben. +<br>Die KDbg-Homepage befindet sich unter <a href="http://www.kdbg.org/">http://www.kdbg.org/</a>. +</body> +</html> |