Kdevelop3 und der interne Debugger

Alles zur Entwicklung von KDE - Anwendungen
Antworten
Christof
Beiträge: 2
Registriert: 14. März 2005 09:49
Wohnort: Düsseldorf

Kdevelop3 und der interne Debugger

Beitrag von Christof »

Hllöchen zusammen :D

bin hier neu im Forum und auch noch ein Neuling was Qt und linux angeht. Habe vorher mit Delphi und dem C++ Builder5 unter Win etwas gemacht, jedoch noch nie mit QT. Alsoooo....

Habe Kdevelop als IDE genommen und möchte damit meine Anwendungen schreiben. Die Onlinehilfe für Qt ist ja ganz gut.. aber bei Kdevelop nicht, wie ich finde. Habe eine ganz einfache Anwendung geschrieben und möchte gerne den Debugger in Kdev testen.

debugtest::debugtest()
: KMainWindow( 0, "debugtest" )
{
// set the shell's ui resource file
setXMLFile("debugtestui.rc");

int i;
QLabel *label = new QLabel(this);
label->show();
for( i = 0;i<=10 ;i++ ){
label->setText(QString::number(i)); <- hier Breakpoint
}
}

An der markierten stelle setzte ich nun ein Breakpoint und möchte das der Debugger da hält. Unter Debugger->start kann ich diesen nun starten, passieren tut aber nichts. Die Anwendung startet und das label zeigt 10 an :roll:

Wieso bleibt der Debugger da nicht an meinem Breakpoint stehen???
Übersehe ich da etwas oder habe ich etwas vergessen??

Danke :)
FlorianBecker
Beiträge: 1213
Registriert: 2. Dezember 2004 10:54
Kontaktdaten:

Beitrag von FlorianBecker »

Mh, also die KDE Libs hat die gleiche Online Doku wie Qt!?!? Hast du die schon gefunden? Gefällt dir der Style nicht/unverständlich?

Mh, wenn ich mich nicht irre, gibt es 2 Startmöglichkeiten für den Debugger, run und run until breakpoint oder so. Aber es geht bestimmt. Guck mal in die KDevelop Doku, evtl. findet sich da noch das ein oder andere interessante Sätzchen drüber. Sonst musst mal das KDevelop Team fragen.
Christof
Beiträge: 2
Registriert: 14. März 2005 09:49
Wohnort: Düsseldorf

Beitrag von Christof »

Danke für deine Antwort :)
Ich meinte die Doku zu Kdeveloper weil wenn ich genau nach ihr vorgehe, klappt es einfach nicht... leider! Benutze Kdeveloper 3.1.1 und finde die IDE richtig gut und würde da gerne bei beleiben. Also entweder habe ich da irgendwas übersehen oder es stimmt da was nicht. Der Breakpoint wird ja nach dem Start des Debuggers aktiviert, ändert seine Farbe also von grau auf rot. Nur danach läuft die Anwendung hoch und das wars auch schon.. :cry:
Dann muß ich wohl noch etwas suchen...
taki
Beiträge: 30
Registriert: 8. Februar 2005 15:52
Wohnort: Berlin

Beitrag von taki »

Hi Christof.
Hast Du inzwischen was rausgefunden?
Ich habe unter SuSE 9.1 mit kde 3.4.0b (kde und kdevelop aus den Apt-Repositories kde und kde-stable) angefangen, eine KDE-Anwendung zu entwickeln. Mit dem kdeveloper konnte ich meine Anwendung debuggen: Der Debugger blieb wirklich am Breakpoint stehen und ließ sich steuern. Die Variablen konnten eingesehen werden.

Seit ich auf SuSE 9.3 umgestiegen bin klappt das nicht mehr. Es sieht genau so aus, wie Du es geschildert hast: Der Debugger startet die Anwendung, aber er hält nicht am Haltepunkt an und kann auch keine Variablen überwachen. Irgendetwas ist an der Umgebung falsch seit dem Umstieg auf SuSE 9.3 :-(

Wenn jemand sagen kann, wie man den Debugger im kdevelop zur Mitarbeit bewegen kann, würde ich mich sehr freuen.
Gruß,
Taki
FlorianBecker
Beiträge: 1213
Registriert: 2. Dezember 2004 10:54
Kontaktdaten:

Beitrag von FlorianBecker »

Ich benutze einen Debugger fast nie.

"Es gibt nur 10 Leute auf der Welt, die binäre Dateien lesen können, entweder man kann, oder man kann es nicht."

Aber euer Problem ist wirklich seltsam, ich mach eigentlich immer nur händisches Debuggen, deswegen kann ich dazu nichts außer dem Spruch beitragen.
taki
Beiträge: 30
Registriert: 8. Februar 2005 15:52
Wohnort: Berlin

Beitrag von taki »

Ich komme auch ohne Debugger zurecht. Muss in meinem Broterwerb ja auch ohne auskommen (Steinzeitsprachen, Steinzeiteditor, wir meißeln unsere Programme noch in Stein :? ). Aber wenn er denn läuft, ist das schon hilfreich. Man kann viel Zeit damit sparen und dabei noch einiges lernen. Da ich ohne auch klar komme, hat das Beheben des Problems bei mir eine sehr geringe Priorität.
FlorianBecker
Beiträge: 1213
Registriert: 2. Dezember 2004 10:54
Kontaktdaten:

Beitrag von FlorianBecker »

Wenn ich mal eine Anleitung wie:

5 Minuten zu gdb

finde, würde ich es ja glatt einmal lernen.
taki
Beiträge: 30
Registriert: 8. Februar 2005 15:52
Wohnort: Berlin

Beitrag von taki »

Als es in meinem kdevelop noch ging, brauchtest Du weniger als 5 Minuten... Du hast eben Dein Programm übersetzt und statt mit dem Zahnrad mit dem Debuggersymbol gestartet. Vorher im Editor in der Sourcezeile per Rechter Maustaste einen Haltepunkt gesetzt und ggf. noch per Rechter Maustaste über einer Variable die Beobachtung derselben aktiviert. Ist wirklich intuitiv. Jedenfalls wenn es funktioniert. Ich hatte aber wie gesagt nichts dafür extra einrichten müssen, das Paket hat eben schon die richtige Umgebung mitgebracht.

Wenn ich mal weniger auf meinem Terminplan hab, werde ich noch etwas forschen. Bis dahin werde ich wie gehabt mit Schreibtischtest und kdebug("was auch immer") auf die Konsole den Käfern auf den Leib rücken. Geht ja auch so.

Wenn ich was rausfinde, werde ich es hier posten.

[Zwei Tage später...]
Gestern abend hab ich debuggen können. Aber ich bin mir nicht bewusst, etwas an meiner Umgebung verändert zu haben. Hmm. So schön es ist, dass es jetzt wieder funktioniert, finde ich es aber doch sehr unbefriedigend, nicht zu wissen, wieso, bzw. viel wichtiger: Warum hat es vorher nicht funktioniert? Ich kann es wirklich nicht nachvollziehen. So kann ich leider auch keinen Hinweis geben, auf was man achten sollte.

Eines fällt mir noch ein: Ich habe in kdevelop mit dem Profil debug begonnen zu entwickeln. Zwischendurch habe ich, als ich mit RPM kämfte, um eine Binärrelease hinzubekommen mit dem Projektprofil "default" experimentiert. Beim Profilwechsel verhält sich kdevelop ziemlich seltsam. Man muss das Projekt distclean machen und automake und autoconf neu durchlaufen. Da ich nicht einmal die Hälfte von dem wirklich verstehe, was dabei alles passiert, musste ich mehrere Anläufe nehmen, ehe sich das Projekt wieder erstellen ließ. Inzwischen entwickle ich wieder im "debug" Profil. Ich vermute, dass das mehrfache Ausführen von "autoconf und Co." die Voraussetzungen für das Debuggen erst gesetzt hat.

Ich hasse dieses Gefühl von Halbwissen... Es funktioniert irgendwie, aber wirklich verstanden hab ichs nicht... Naja, aber man muss eben Prioritäten setzen. Die Zeit, mich da tiefer reinzuknien fehlt mir noch...
markusk21
Beiträge: 9
Registriert: 17. August 2006 02:50

Beitrag von markusk21 »

in der .pro - Datei bei folgendes Gesetzt:
CONFIG +=
qt \
debug

Was es bei mir....
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Der Beitrag war 2 Jahre(!) alt...
Burgpflanze
Beiträge: 89
Registriert: 24. Februar 2006 16:41
Wohnort: Dresden

Beitrag von Burgpflanze »

Aber er lebt offensichtlich noch :wink:
Gruß, Peter
Antworten