Re: Development Environments for gtkmm



Andreas Volz wrote:
Am Mon, 7 Jan 2008 09:24:41 -0600 schrieb Jonathon Jongsma:

On 1/6/08, Andreas Volz <lists brachttal net> wrote:
Use Anjuta, but at least the 2.3.1 unstable release. There're some
debugger stability updates included compared to the last stable
version. Anjuta has the best GUI debugger that I know for Linux.
Admittedly, I'm not a completely neutral observer here, and I don't
mean to denigrate the great work the anjuta guys have been doing
lately, but I try the anjuta debugger on non-trivial programs from
time to time, and I always seem to end up with anjuta crashing.  Has
that improved in 2.3.1?

Yes, the debugger has been much improved in 2.3.1. All versions before
crashed really often. It's still not perfect, but I use it all the time
for debugging. Even my complex multi-threaded application is possible
to debug with Anjuta 2.3.1.

I added a lot of bug reports for Anjuta and I like to see that the
developers react very fast and solve the issues often in some days in
SVN.

Currently I'm testing a special Anjuta patch to use the gdb option "-d"
to add external source files. This helps me to debug libraries that are
installed with source and debug info on Gentoo. No other GUI that I
know has the possibility to step into and through libraries that easy.

You know, by using a "set substitute-path <library-source-path> <installed-source-path>" in the $HOME/.gdbinit file it is possible to install the library source somewhere and have gdb replace the path where the library's debug info says the source should be with where you've installed the library's source.

On my system, for example, by using the 'strings' command, I'm able to see that glibmm's debug info says that the source should be found in "/build/buildd/glibmm2.4-2.14.2/". I actually installed glibmm's source in "/usr/src/glibmm2.4-2.14.2". So by including the line "set substitute-path /build/buildd /usr/src" in ~/.gdbinit gdb has no problem finding glibmm's source.

This works with all debuggers (even nemiver) as long as ~/.gdbinit is processed by gdb when it starts up. :-)

-Jose


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]