Debugging
-
- Beiträge: 465
- Registriert: Sa 21. Aug 2010, 21:30
- OS, Lazarus, FPC: Windows 7 Ultimate (L 1.2.2 FPC 2.6.4 32-bit)
- CPU-Target: 64-Bit
- Wohnort: nahe Bremen
- Kontaktdaten:
Debugging
Wenn ich meine Anwendung(en) debuggen möchte und einen Haltepunkt erstelle werden auch alle Units durchgegangen die ich nicht selber programmmiert hab.
Ist es möglich diese automatisch zu überspringen? - Also ich würde gerne nur meinen eigenen Quellcode debuggen, da dieser bisher auch immer die Fehler enthielt und nicht andere Units.
Ist es möglich diese automatisch zu überspringen? - Also ich würde gerne nur meinen eigenen Quellcode debuggen, da dieser bisher auch immer die Fehler enthielt und nicht andere Units.
www.mcpatcher.net | www.hoeper.me
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: Debugging
Du musst nicht in jede Funktion reinspringen (F7) du kannst auch Funktionen überspringen (F8)
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
-
- Beiträge: 465
- Registriert: Sa 21. Aug 2010, 21:30
- OS, Lazarus, FPC: Windows 7 Ultimate (L 1.2.2 FPC 2.6.4 32-bit)
- CPU-Target: 64-Bit
- Wohnort: nahe Bremen
- Kontaktdaten:
Re: Debugging
Dann werden ja aber immer die Dateien alle in Lazarus geöffnet.
www.mcpatcher.net | www.hoeper.me
-
- Beiträge: 586
- Registriert: Mi 25. Mär 2009, 21:12
- OS, Lazarus, FPC: Laz trunk / fpc latest release / Win and other
- CPU-Target: mostly 32 bit
Re: Debugging
Wann genau wird eine andere datei geoeffnet?
Du setzt einen breakpoint. z.b in Button1Click
Dann kannst du *innerhalb* von Button1Click mit F8 debuggen.
Am ende von Button1Click musst du die App mit F9 weiterlaufen lassen, bis wieder ein breakpoint in deinem Code erreicht wird.
Wenn Button1Click click folgendes enthält
Dann kannst du mit F7 in MeineFunctionIrgendwas hinein-steppen
ABER:
stept leider mit F7 erst in self.caption....
Abhilfe 1)
mehrzeilig.
DIe Ausführung haelt erst an "self.Caption" (F8), and dann an "a := MeineFunctionIrgendwas(" (F7)
Abhilfe 2)
etwas mehr Komfort
Kompiliere Die IDE neu, und entferne allen packages (wie LCL) die debug Info.
Jede package oeffnen, und in den Package abschalten.
ggf auch unter Menu: Tools/Konfig build IDE > nachsehen und Parameter wie -g -gw -gs entfernen
Du setzt einen breakpoint. z.b in Button1Click
Dann kannst du *innerhalb* von Button1Click mit F8 debuggen.
Am ende von Button1Click musst du die App mit F9 weiterlaufen lassen, bis wieder ein breakpoint in deinem Code erreicht wird.
Wenn Button1Click click folgendes enthält
Code: Alles auswählen
a := MeineFunctionIrgendwas;
ABER:
Code: Alles auswählen
a := MeineFunctionIrgendwas(self.Caption);
Abhilfe 1)
Code: Alles auswählen
a := MeineFunctionIrgendwas(
self.Caption
);
DIe Ausführung haelt erst an "self.Caption" (F8), and dann an "a := MeineFunctionIrgendwas(" (F7)
Abhilfe 2)
etwas mehr Komfort
Kompiliere Die IDE neu, und entferne allen packages (wie LCL) die debug Info.
Jede package oeffnen, und in den Package abschalten.
ggf auch unter Menu: Tools/Konfig build IDE > nachsehen und Parameter wie -g -gw -gs entfernen
-
- Beiträge: 465
- Registriert: Sa 21. Aug 2010, 21:30
- OS, Lazarus, FPC: Windows 7 Ultimate (L 1.2.2 FPC 2.6.4 32-bit)
- CPU-Target: 64-Bit
- Wohnort: nahe Bremen
- Kontaktdaten:
Re: Debugging
das zweite hört sich sehr gut an allerdings habe ich bisher kaum erfahrungen mit dem neu kompilieren der ide gemacht.
könnte mir da vll noch jemand weiterhelfen?
könnte mir da vll noch jemand weiterhelfen?
www.mcpatcher.net | www.hoeper.me
-
- Beiträge: 770
- Registriert: Sa 21. Feb 2009, 13:46
- OS, Lazarus, FPC: Windows 7 (L 1.3 Built 43666 FPC 2.6.2)
- CPU-Target: 32Bit
Re: Debugging
Das sollte nicht das Problem sein, die IDE kompiliert man ja bei jedem neuen Package was man installiert auch neu ...
>> Werkzeuge >> Kompiliere Lazarus mit Profil: *hier steht dann dein spezielles oder irgendein Profil* >> auf Ja klicken.
Im Idealfall war's das schon und alles läuft glatt. Lazarus geht aus und startet 2 Sekunden mit der neu Kompilierten Version. Im schlimmsten Fall wird das Kompilieren abgebrochen und es passiert einfach nichts...
und debug Dateien enden soweit ich weis mit .dbg , also sollte das kein Problem darstellen
>> Werkzeuge >> Kompiliere Lazarus mit Profil: *hier steht dann dein spezielles oder irgendein Profil* >> auf Ja klicken.
Im Idealfall war's das schon und alles läuft glatt. Lazarus geht aus und startet 2 Sekunden mit der neu Kompilierten Version. Im schlimmsten Fall wird das Kompilieren abgebrochen und es passiert einfach nichts...
und debug Dateien enden soweit ich weis mit .dbg , also sollte das kein Problem darstellen

Code: Alles auswählen
Signatur := nil;
-
- Beiträge: 586
- Registriert: Mi 25. Mär 2009, 21:12
- OS, Lazarus, FPC: Laz trunk / fpc latest release / Win and other
- CPU-Target: mostly 32 bit
Re: Debugging
In diesem falle waere es am besten die IDE clen zu buildenMAC hat geschrieben:Das sollte nicht das Problem sein, die IDE kompiliert man ja bei jedem neuen Package was man installiert auch neu ...
>> Werkzeuge >> Kompiliere Lazarus mit Profil: *hier steht dann dein spezielles oder irgendein Profil* >> auf Ja klicken.
Im Idealfall war's das schon und alles läuft glatt. Lazarus geht aus und startet 2 Sekunden mit der neu Kompilierten Version. Im schlimmsten Fall wird das Kompilieren abgebrochen und es passiert einfach nichts...
und debug Dateien enden soweit ich weis mit .dbg , also sollte das kein Problem darstellen
1) Package LCL (ggf auch LazUtils und andere) oeffnen:
Optionen (Package toolbar) / Linker / Checkbox debug Info > AUS
2)
Menu: Tool / Configure Build IDE
Radio-button "clean all"
ggf aus dem options field, alle optionen mit -g.... entfernen
-----------
2 ist gar nicht noetig.
Es reicht die Package neu zu bauen, und das sollte automatisch passieren, wenn die Optionon sich aendern
Also einfach nur 1
-
- Beiträge: 465
- Registriert: Sa 21. Aug 2010, 21:30
- OS, Lazarus, FPC: Windows 7 Ultimate (L 1.2.2 FPC 2.6.4 32-bit)
- CPU-Target: 64-Bit
- Wohnort: nahe Bremen
- Kontaktdaten:
Re: Debugging
Vielen Dank euch!
martin_frb, da ist genau das was ich gesucht habe und es wird mir das debuggen in den meisten fällen erheblich vereinfachen.
martin_frb, da ist genau das was ich gesucht habe und es wird mir das debuggen in den meisten fällen erheblich vereinfachen.
www.mcpatcher.net | www.hoeper.me
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: Debugging
versteh ich immer noch ned was du da vereinfachen willst aber egal
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
- stoffel_hessen
- Beiträge: 66
- Registriert: Sa 18. Jun 2022, 12:27
- OS, Lazarus, FPC: Windows 11 (Version 2.2.2, FPC 3.2.2)
- CPU-Target: x86 64Bit
- Wohnort: Riedstadt
Re: Debugging
Ich greife noch mal diesen alten Tread auf, da ich genau das gleiche Problem habe, aber leider die Punkte 1 und 2 nicht finde.martin_frb hat geschrieben: Mo 27. Mai 2013, 11:29
In diesem falle waere es am besten die IDE clen zu builden
1) Package LCL (ggf auch LazUtils und andere) oeffnen:
Optionen (Package toolbar) / Linker / Checkbox debug Info > AUS
2)
Menu: Tool / Configure Build IDE
Radio-button "clean all"
ggf aus dem options field, alle optionen mit -g.... entfernen
-----------
2 ist gar nicht noetig.
Es reicht die Package neu zu bauen, und das sollte automatisch passieren, wenn die Optionon sich aendern
Also einfach nur 1
Habe in den Menüs die beiden nachfolgen Stellen gefunden, mir ist aber nicht klar wie es hier weiter geht, bzw. was ich hier einstellen bzw. auswählen muss.
Danke für eure Unterstützung
Gruß Christopher
Re: Debugging
Irgendwie hast du Probleme mit dem Debugger, die sonst niemand hat.
Tipp: Es gibt auch ein Leben ohne Debugger!
Aber zu deiner Frage:
In deinem Bild steht doch "Geladenes Package öffnen"
Dort kannst du dann LCL und Konsorten öffnen, "Debuggen"-Einstellungen ändern und neu kompilieren.
Ich würde das allerdings nicht machen. Sei doch froh, wenn du die Debug-Informationen hast, man braucht ja nicht in alles hineinsteppen.

Tipp: Es gibt auch ein Leben ohne Debugger!

Aber zu deiner Frage:
In deinem Bild steht doch "Geladenes Package öffnen"
Dort kannst du dann LCL und Konsorten öffnen, "Debuggen"-Einstellungen ändern und neu kompilieren.
Ich würde das allerdings nicht machen. Sei doch froh, wenn du die Debug-Informationen hast, man braucht ja nicht in alles hineinsteppen.
- af0815
- Lazarusforum e. V.
- Beiträge: 6770
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: Debugging
Übrigends war der Thread knappe 9 Jahre alt, da fragt sich ob die Infos noch immer stimmen.
von martin_frb » Montag 27. Mai 2013, 11:29
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
-
- Beiträge: 586
- Registriert: Mi 25. Mär 2009, 21:12
- OS, Lazarus, FPC: Laz trunk / fpc latest release / Win and other
- CPU-Target: mostly 32 bit
Re: Debugging
Schaut mal hier: https://forum.lazarus.freepascal.org/in ... #msg449242
Bitte als allererstes sicherstellen das Ihr FpDebug nutzt.
Bitte als allererstes sicherstellen das Ihr FpDebug nutzt.