[?] Nur eigene Units beim Debug

Für Fragen rund um die Ide und zum Debugger
Antworten
Benutzeravatar
kralle
Lazarusforum e. V.
Beiträge: 989
Registriert: Mi 17. Mär 2010, 14:50
OS, Lazarus, FPC: Linux Mint 20 , FPC 3.3.1 , Lazarus 2.1.0 -Win10 & XE7Pro
CPU-Target: 64Bit
Wohnort: Bremerhaven
Kontaktdaten:

[?] Nur eigene Units beim Debug

Beitrag von kralle »

Moin,

wenn ich in dem von mir erstellten Code Fehler suchen will, dann möchte ich auch das der Debugger,
nur an der Stelle in meinem Code hält wo der Fehler ist und nicht in irgendwelchen System-Units.

Wie und wo stelle ich das in Lazarus 1.6RC1 unter Linux ein?

Gruß Heiko
Zuletzt geändert von kralle am Di 8. Mär 2016, 08:48, insgesamt 1-mal geändert.
OS: Manjaro Linux, Debian und Windows 10
FPC-Version: 3.2.2 , Lazarus 3.0
+ Delphi XE7SP1

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Re: Nur eigene Units beim Debug

Beitrag von theo »

Grundsätzlich die LCL ohne Debug info bauen. FCL ist meistens sowieso ohne.
http://forum.lazarus.freepascal.org/ind ... 321.0.html

Man kann aber auch mit F8 über "externe" Aufrufe springen. So mache ich das meistens.

Benutzeravatar
kralle
Lazarusforum e. V.
Beiträge: 989
Registriert: Mi 17. Mär 2010, 14:50
OS, Lazarus, FPC: Linux Mint 20 , FPC 3.3.1 , Lazarus 2.1.0 -Win10 & XE7Pro
CPU-Target: 64Bit
Wohnort: Bremerhaven
Kontaktdaten:

Re: Nur eigene Units beim Debug

Beitrag von kralle »

Moin,

theo hat geschrieben:Grundsätzlich die LCL ohne Debug info bauen. FCL ist meistens sowieso ohne.
http://forum.lazarus.freepascal.org/ind ... 321.0.html

Hmm, laut dem Artikel braucht man doch nur in "Projekt / Projekteinstellungen / Compilereinstellungen / Debuggen"
den Punkt "Debugger-Informationen für GDB ..." deaktivieren.

Wenn ich das mache, dann bekomme ich das Assembler-Fenster angezeigt :cry:

theo hat geschrieben:Man kann aber auch mit F8 über "externe" Aufrufe springen. So mache ich das meistens.

Wenn ich im Einzelschritt bin ist das klar, aber wenn ich das Programm mit F9 starte und wenn es dann z.B. nach einem Klick auf einen Button einen Error gibt,
dann möchte ich in meinem Quellcode an die Stelle springen, die den Fehler auslöst.

Gruß Heiko
OS: Manjaro Linux, Debian und Windows 10
FPC-Version: 3.2.2 , Lazarus 3.0
+ Delphi XE7SP1

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Re: Nur eigene Units beim Debug

Beitrag von theo »

kralle hat geschrieben:Hmm, laut dem Artikel braucht man doch nur in "Projekt / Projekteinstellungen / Compilereinstellungen / Debuggen"
den Punkt "Debugger-Informationen für GDB ..." deaktivieren.

Nö, dann ist der Debugger komplett außer Gefecht.

Wie gesagt, LCL bzw. IDE ohne Debug info bauen. (Werkzeige, Lazarus kompilieren einrichten..)

Benutzeravatar
kralle
Lazarusforum e. V.
Beiträge: 989
Registriert: Mi 17. Mär 2010, 14:50
OS, Lazarus, FPC: Linux Mint 20 , FPC 3.3.1 , Lazarus 2.1.0 -Win10 & XE7Pro
CPU-Target: 64Bit
Wohnort: Bremerhaven
Kontaktdaten:

Re: Nur eigene Units beim Debug

Beitrag von kralle »

Moin,
theo hat geschrieben:Nö, dann ist der Debugger komplett außer Gefecht.

Upps, das soll natürlich nicht sein.
theo hat geschrieben:Wie gesagt, LCL bzw. IDE ohne Debug info bauen. (Werkzeuge, Lazarus kompilieren einrichten..)

Okay, ich habe jetzt eine weiteres Profil eingerichtet und dort unter EInstellungen "-gl -Xs" eingetragen (die Parameter habe ich aus dem Lazarus-Buch).
Jetzt kommt, zwar keine "Speicherauszugbox" mehr, aber wenn ich die Fehlermeldung
Projekt SDG hat Exception-Klasse >>External: SIGSEGV<< ausgelöst. In Deit 'include/customform.inc in Zeile 2201: Visible:= True;
bestätige , lande ich immer noch in "customform.inc" und nicht in meiner Unit. :cry:

Es muß also noch ein anderer Parameter nötig sein, aber welcher?
OS: Manjaro Linux, Debian und Windows 10
FPC-Version: 3.2.2 , Lazarus 3.0
+ Delphi XE7SP1

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Re: Nur eigene Units beim Debug

Beitrag von theo »

Naja, wenn es dort passiert, dann ist das halt so.
Schau dir den Aufrufstack an, dann weißt du wie er dahin kommt.

Antworten