Dafür gibt's mehrere Möglichkeiten:
Wenn Sie keinen Haltepunkt setzen können, könnte es sein, dass das Programm gerade läuft. Sie können keine Haltepunkte setzen, solange das Programm läuft. Halten Sie es zuerst mit Ausführung|Unterbrechen an. Falls Sie dann noch immer keine Haltepunkte setzen können, versichern Sie sich, dass Sie das Programm mit Debug-Information übersetzt und gebunden haben.
Benutzen Sie das Fenster Beobachtete Ausdrücke.
Watchpoints können über die Liste der Haltepunkte bearbeitet werden.
Laden Sie zuerst das Programm mittels Datei|Programm laden, dann geben Sie den Core-Dump mittels Datei|Core-Dump an.
Starten Sie das Programm und lassen Sie es laufen, bis es in die Endlosschleife gelangt. Dann schalten Sie um zu KDbg und wählen Ausführung|Unterbrechen. Hiermit haben Sie das Programm in flagranti erwischt!
In der Liste der Haltepunkte wählen Sie den Haltepunkt; dann klicken Sie Bedingt und geben die Anzahl in Ignoriere nächste Treffer an.
Wählen Sie Ausführung|Argumente und geben die Umgebungsvariable im Argumente-Dialog an.
Wählen Sie Ausführung|Argumente und geben das Arbeitsverzeichnis im Argumente-Dialog an.
Wählen Sie Einstellungen|Dieses Programm und schalten auf das Register Ausgabe um. Wählen Sie Nur Ausgabe, einfache Terminalemulation und klicken Sie OK. Nun müssen Sie das Programm neu laden (am einfachsten wählen Sie es aus der Liste unter Datei|Zuletzt geöffnete Programme). Die Programmausgaben werden nun in das eingebaute Ausgabefenster geschrieben und stdin ist auf /dev/null umgeleitet.
Sie müssen diese Einstellungen für jedes neue Programm wiederholen, das Sie debuggen.
Wichtig: Sie sollten dies nicht tun, falls Ihr Programm Eingaben vom Terminal (normalerweise stdin) erwartet oder falls mehr als nur einfache Terminalemultionen benötigt werden (mehr als nur Wagenrücklauf und Zeilenvorschub). Das eingebaute Ausgabefenster unterstützt keine Eingaben oder Terminalemulationen.