2 problems with debugger

Vladimir Prus ghost at cs.msu.su
Sun Nov 5 20:23:06 UTC 2006


On Sunday 05 November 2006 19:09, Andreas Pakulat wrote:

Hi Andreas,

> wanted to discuss 2 problems I still have with the debugger:
>
> 1. Startup of kdevelop inside kdevelop is really slow here and it seems
> it got sth. to do with how many breakpoints I have set and enabled. I
> tend to set breakpoints when I debug sth but never unset them, unless in
> a later debug session I stumble upon them. So I had like 20 breakpoints
> in the qmake manager set and it seems that kdevelop debugger takes ages
> to set them all.
>
> I also noted that a self-compiled gdb 6.5 is a bit faster than the
> debian packaged gdb 6.4.90 (which the maintainer claims to be nearly the
> same as 6.5)
>
> I can't attach a konsole output, too big. I put it on
>
> www.apaku.de/vardata/debugger.out
>
> It contains the logs from 2 debug session, the first starts kdevelop
> with no breakpoints and then I set a couple of breakpoints and start it
> again.  The 2nd case needed approx 12 minutes to start, while the first
> was nearly instantanious.

Looking at the log, the problem is obvious, while the solution is not quite. 
Most of KDevelop code is in libraries, which are loaded after startup. When 
you start KDevelop gdb does not yet see those libraries, so it tries to 
reinsert breakpoint after each plugin is loaded, which takes quite some time.

I'm not sure though how it comes to take 12 mins.

In fact, it looks that you've used the "restart" button as opposed to stopping 
the debugger and staring it aflesh. Can you check if stopping/starting works 
better? I might be that gdb does something wrong exactly in "restart" 
scenario, in which case I might be able to fix something.

>
> 2. If I cancel the gdb start before the kdevelop splash screen opens up
> the debugger is killed, but the kdevelop instance still starts. Not sure
> you can do sth. about this 2nd though, just wanted to mention it.

No immediate ideas on this one.

- Volodya




More information about the KDevelop-devel mailing list