1 <!doctype html public
"-//w3c//dtd html 4.0 transitional//en">
4 <meta http-equiv=
"Content-Type" content=
"text/html; charset=UTF-8">
5 <meta name=
"GENERATOR" content=
"Mozilla/4.74 [en] (X11; U; Linux 2.2.16-SMP i686) [Netscape]">
6 <meta name=
"Author" content=
"Johannes Sixt">
7 <title>KDbg - Benutzerhandbuch
</title>
9 <body text=
"#000000" bgcolor=
"#FFFFFF" link=
"#0000EF" vlink=
"#51188E" alink=
"#FF0000">
12 KDbg - Benutzerhandbuch
</h1>
19 <a href=
"#Introduction">Einleitung
</a></li>
22 <a href=
"#UsingKDbg">Mit KDbg arbeiten
</a></li>
25 <a href=
"#InfoWindows">Die Informationsfenster von KDbg
</a></li>
28 <a href=
"#TipsTricks">Tipps und so weiter
</a></li>
31 F
ür Fortgeschrittene:
<a href=
"../../en/kdbg/types.html">Typentabellen
</a>
35 <a href=
"#Author">Autor
</a></li>
40 <a NAME=
"Introduction"></a>Einleitung
</h2>
41 KDbg ist eine grafische Benutzeroberfl
äche f
ür
<tt>gdb
</tt>,
43 <p>Das bedeutet, dass KDbg selbst nicht der Debugger ist. Vielmehr kommuniziert
44 KDbg mit
<tt>gdb
</tt>, indem Befehlszeilen and diesen geschickt werden
45 und die Ausgabe, wie z.B. Variablenwerte, entgegengenommen werden. Die
46 Men
übefehle und Mausklicks werden in
<tt>gdb
</tt>-Befehle umgesetzt,
47 und die Ausgabe von
<tt>gdb
</tt> wird in (mehr oder weniger) sichtbare
48 Information umgesetzt, wie zum Beispiel die Struktur von Variablen.
49 <p>Eine Folge davon ist, dass KDbg vollst
ändig von den F
ähigkeiten
50 des verwendeten Befehlszeilendebuggers,
<tt>gdb
</tt>, abh
ängig ist.
51 KDbg kann nicht mehr als
<tt>gdb
</tt> leisten. Wenn Sie zum Beispiel einen
53 haben, der Programme mit Threads nicht unterst
ützt, dann kann auch
54 KDbg das nicht (obwohl ein Threads-Fenster vorhanden ist).
56 <a NAME=
"UsingKDbg"></a>Mit KDbg arbeiten
</h2>
57 Bevor Sie mit der Arbeit beginnen, sollten Sie die
<a href=
"globaloptions.html">globalen
58 Einstellungen
</a> pr
üfen, indem Sie
<i>Datei|Globale Einstellungen
</i>
61 Ein zu debuggendes Program angeben
</h4>
62 Um ein Programm zu debuggen, w
ählen Sie
<i>Datei|Programm
</i>. Wenn
63 Sie das Programm schon einmal debuggt haben, k
önnen Sie es auch aus
64 der Liste unter
<i>Datei|Zuletzt g
öffnete Programme
</i> w
ählen.
65 Das Programm wird jetzt geladen.
66 <p>Wenn Sie einen Core-Dump verwenden wollen, m
üssen Sie zuerst das
67 Programm, das den Core-Dump erzeugt hat wie gerade erw
ähnt laden,
68 dann w
ählen Sie
<i>Datei|Core dump
</i> aus dem Men
ü. KDbg zeigt
69 die Stelle an, die den Core-Dump verursacht hat.
70 <p>Sie k
önnen nun Haltepunkte setzen, indem Sie die Eintr
äge
71 im Men
ü <i>Haltepunkt
</i> oder im Rechte-Maus-Men
ü oder in der
72 <a href=
"breakptlist.html">Liste
73 der Haltepunkte
</a> verwenden.
74 <p>Sie k
önnen auch
<a href=
"pgmsettings.html">programmspezifische
75 Einstellungen
</a> vornehmen, indem Sie
<i>Datei|Einstellungen
</i> w
ählen.
77 Das Programm ausf
ühren
</h4>
78 Nun f
ühren Sie das Programm aus, indem Sie
<i>Ausf
ührung|Ausf
ühren
</i>
79 w
ählen. Das Programm arbeitet nun wie gew
öhnlich, bis es beendet
80 wird, auf einen Haltepunkt oder Watchpoint trifft, oder ein Signal empf
ängt.
81 <p>Sie k
önnen das Programm mit Argumenten ausf
ühren, ein Arbeitsverzeichnis
82 festlegen und auch Umgebungsvariablen definieren. Dazu w
ählen Sie
83 <i>Ausf
ührung|Argumente
</i>
84 und machen Ihre Angaben im
<a href=
"argspwdenv.html">Programmargumente-Dialog
</a>.
85 <p>Weiters k
önnen Sie sich in ein Programm einh
ängen (
<i>attachen
</i>),
86 das bereits ausgef
ührt wird. Dazu laden Sie das Programm zuerst wie
87 oben beschrieben, dann w
ählen Sie
<i>Ausf
ührung|Attachen
</i>.
88 Geben Sie die Prozessnummer an und klicken Sie
<i>OK
</i>. Das Programm
89 wird jetzt angehalten (aber nicht beendet), und der derzeitige Stand des
90 Programms wird im
<a href=
"sourcecode.html">Quellcode-Fenster
</a> angezeigt.
92 Das Programm wurde angehalten - was nun?
</h4>
93 Wenn das Programm an einem Haltepunkt, Watchpoint oder wegen eines Signals
94 angehalten wird, zeigt das
<a href=
"sourcecode.html">Quellcode-Fenster
</a>
95 die Zeile, in der das Programm gerade arbeitete. Es passiert h
äufig,
96 dass das Programm wegen eine Signals (oftmals
<tt>SIGSEGV
</tt>, Speicherzugriffsfehler)
97 in einer Funktion angehalten wird, die sich nicht in jenem Programmteil
98 befindet, den Sie geschrieben haben. In diesem Fall betrachten Sie das
99 <a href=
"stack.html">Stack-Fenster
</a>
100 genauer: Suchen Sie nach einer Funktion, die Sie geschrieben haben (beginnen
101 Sie am oberen Ende) und klicken Sie darauf. Das bringt Sie an eine Stelle,
102 an der Sie mit der Suche nach dem tats
ächlichen Programmfehler beginnen
104 <p>Im Men
ü <i>Ausf
ührung
</i> finden Sie Befehle, die Sie zum
105 Ausf
ühren und schrittweisen Abarbeiten des Programms verwenden. Weiters
106 k
önnen Sie das laufende Programm unterbrechen. Die wichtigen Befehle
107 k
önnen auch mit Funktionstasten gegeben werden. Zum effizienten Arbeiten
108 empfehle ich, dass Sie sich diese Tasten eingew
öhnen.
109 Sie k
önnen
<i>Einstellungen|Kurzbefehle festlegen
</i> verwenden, falls
110 Sie die Funktionen anderen Tasten zuweisen wollen.
111 <p>Im Men
ü <i>Haltepunkt
</i> finden Sie Befehle zum Setzen, Entfernen,
112 Aktivieren und Inaktivieren von permanenten und tempor
ären Haltepunkten.
113 Nat
ürlich k
önnen Sie auch eine
<a href=
"breakptlist.html">Liste
114 der Haltepunkte
</a> anzeigen. Sie k
önnen einen Haltepunkt auch setzen,
115 indem Sie mit der Maus in den Freiraum links der entsprechenden Quellcode-Zeile
116 klicken (mit der linken Maustaste); weiters k
önnen sie einen vorhandenen
117 Haltepunkt mit der mittleren Maustaste aktivieren und deaktivieren.
118 <p>Die Animation in der Werkzeugleiste zeigt an, ob das Programm gerade l
äuft.
119 Sie bleibt stehen, sobald das Programm an einem Haltepunkt oder aus einem
120 anderen Grund angehalten wird oder sobald es beendet wird.
121 Ein Klick auf die Animation hat die Funktion von
<i>Ausf
ührung|Unterbrechen
</i>.
123 <a NAME=
"InfoWindows"></a>Die Informationsfenster von KDbg
</h2>
124 KDbg zeigt Information in einer Reihe verschiedener Fenster an. Im Men
ü
126 finden Sie die Befehle, die diese Fenster anzeigen und schlie
ßen. Es handelt
127 sich dabei um
<i>dockende
</i> Fenster, sodass Sie deren Anordnung beliebig
128 ver
ändern k
önnen.
131 <a href=
"sourcecode.html">Das Quellcode-Fenster
</a></li>
134 <a href=
"localvars.html">Lokale Variablen
</a></li>
137 <a href=
"stack.html">Der Programm-Stack
</a></li>
140 <a href=
"watches.html">Ausdr
ücke (
<i>Watches
</i>)
</a></li>
143 <a href=
"breakptlist.html">Die Liste der Haltepunkte
</a></li>
146 <a href=
"pgmoutput.html">Das Programmausgabefenster
</a></li>
149 <a href=
"registers.html">Die Registerinhalt
</a></li>
152 <a href=
"memory.html">Der Speicherinhalt
</a></li>
155 <a href=
"threads.html">Die Programm-Threads
</a></li>
159 <a NAME=
"TipsTricks"></a>Tipps und so weiter
</h2>
163 <a href=
"tips.html">Tipps
</a></li>
166 <a href=
"howdoi.html">Wie kann ich...?
</a></li>
170 <a NAME=
"Author"></a>Autor
</h2>
171 KDbg wurde von
<a href=
"mailto:j6t@kdbg.org">Johannes Sixt
</a>
172 mit vielen weiteren Helfern geschrieben.
173 <br>Die KDbg-Homepage befindet sich unter
<a href=
"http://www.kdbg.org/">http://www.kdbg.org/
</a>.