Recent

Author Topic: debugger just hangs.  (Read 3181 times)

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 9867
  • Debugger - SynEdit - and more
    • wiki
Re: debugger just hangs.
« Reply #30 on: October 19, 2022, 05:41:32 pm »
I don't use the makefile a lot. I usually build the IDE from within the IDE (as all my installs are in the home folder).

If you have a root installation, then rebuilding the LCL will create new files in /home/yourname/.lazarus/___ somewhere. (The details on that aren't exactly my area of expertise)


make should take something like OPT, OPTS, or OPTIONS.
e.g
make bigide OPTS="-gw3"

But I am not sure which name to use.

----
If you open (while the debugger is running) one of the LCL units, and navigate to some code inside it, you should see if there are blue dots or not => that should tell you if there is debug info.
If there are blue dots, but the variables/types/classes are not present, then its likely the bug that we are hunting.




If objdump can't dump it, then yes the debugger likely can't read it either.

If there is any chance for me to get the compiled exe, that might help. Because I can then load the debug info from it... Or well tell FpDebug to do so, and see where it goes wrong.

Of course it may not mean that I can make it load-able. Just at least add a warning for the broken info.


The other point is, looking at the output of objdump, it can be said there is something wrong in the debug info.

This may be either FPC or the linker.
- If it is FPC, then it must relate to some very specific code/data construct => after all, it does not seem to happen to everyone.
- If it is the linker => maybe there is a way to update it. Though I am not that familiar with the linux package system, and I wouldn't know which package you would need to try and update.

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 9867
  • Debugger - SynEdit - and more
    • wiki
Re: debugger just hangs.
« Reply #31 on: October 19, 2022, 05:46:34 pm »
One more thing about "Run to cursor"

The cursor must be at a line with a blue dot. That is a line with code, that the debugger can stop at.

If the cursor is at an empty line, that line will never be reached.
And the debugger is currently not smart enough to find the next line with code (gdb does that / but gdb also sets a breakpoint 500 lines after the line the user clicked, if those 500 lines have no code (e.g. interface section) => and that is massively irritating)

lazer

  • Full Member
  • ***
  • Posts: 215
Re: debugger just hangs.
« Reply #32 on: October 19, 2022, 07:26:09 pm »
Quote
If you open (while the debugger is running) one of the LCL units, and navigate to some code inside it, you should see if there are blue dots or not => that should tell you if there is debug info.
If there are blue dots, but the variables/types/classes are not present, then its likely the bug that we are hunting.

I did run to cursor in a proc where I have no local variables and IDE is pretending it does not know what a TspeedButton is.  I file|reopen  speedbutton.inc ( which got opened automatically at some point and is in the lazarus-main/lcl/include tree ).

Here I see blue dots !
« Last Edit: October 19, 2022, 07:27:47 pm by lazer »

 

TinyPortal © 2005-2018