GDB Load Symbols & Wishes

Vladimir Prus ghost at cs.msu.su
Thu Apr 3 16:55:14 UTC 2008


Clarke, Jason, RBSGC wrote:

> A summary of the following thread;
>  
> http://www.kdevelop.org/phorum5/read.php?9,31735
>  
> 1.) Is there any way to add a progress bar for gdb when it's doing
> something, for example loading symbols when attaching to a process?

No. GDB does not provide any progress reporting for internal operations
like loading symbol tables. It only provides reporting for the 'load'
operations.

The forum thread mentions that it's hard to tell if GDB is busy, or not.
Indeed the single status letter shown at the right of the status bar is not
very obvious, probably this can be improved.

> 2.)  From what I've gleaned GDB is quite slow with multithreaded
> applications, due to lack of caching of symbols/stacks. My suggestion 
> (if possible) to help things, is to do shallow queries in objects in the
> locals window until that object is expanded. Is there ability in the GDB
> api to do so? E.g. if you have an object on the stack and you step
> through some code, it should only display that objects address, and not
> deep query it, until explicitly clicking expand like "plus".

Unless I forgot something, the only difference between ST and MT programs
is that in MT programs, after stop, we iterate over each thread and get the
the information about innermost frame. That does not sound very complex 
(although GDB CVS HEAD has a command to get the information in one go). What
exactly do you see as taking lot of time?

And speaking of "shallow" fetch, it should only matter on target where
access to memory is very slow -- basically only embedded remote targets.

- Volodya






More information about the KDevelop-devel mailing list