First of all: Dwarf2 vs Dwarf3 etc only matters for inspecting variables.
Line info (for stepping) should be the same for all of them.
First question is, if you have debug info (dwarf) for the LCL / LCLBase?
Does "procedure TControl.SetText(const Value: TCaption);" have the blue dots.
It may work under gdb, because if "debug info type" is "default -g", that may (on 32bit win) generate stabs. And fpdebug does not read stabs.
The dialog that pops up, requiring dwarf, only affect project files.
You can
- edit the Package options. LclBase
- tools > configure build lazarus. Add -gw or -gw3 to options, and save (no need to rebuild the IDE, packages will be rebuild on next run)
- Use "additions and overrides"
With debug info, it works for me. 32 bit 2.0.10 IDE on a Win64 PC.
Stepping had a major overhaul in trunk. There was no known fix for anything matching the above. But if the issue is not due to missing line info, then there still is a chance that it works in trunk.