List Info

Thread: How do you debug gdb?




How do you debug gdb?
country flaguser name
United States
2008-02-17 22:00:18
It seemed that this question was better suited for the
development group 
than in the general group.

How do you debug gdb?

In other words, if I have a problem with gdb itself how do I
go about 
debugging the issue?

Ray


Re: How do you debug gdb?
country flaguser name
Switzerland
2008-02-18 02:11:28
At 20:00 17.02.2008 -0800, Ray Hurst wrote:
>It seemed that this question was better suited for the
development group than in the general group.
>
>How do you debug gdb?
>
>In other words, if I have a problem with gdb itself how
do I go about debugging the issue?

You should be able to do it the same as with every other
program:
load gdb in gdb and then load some other program in the gdb
being
debugged. To debug gdb it should contain the debug symbols.

bye  Fabi



Re: How do you debug gdb?
country flaguser name
United States
2008-02-19 13:38:16
On Sun, 2008-02-17 at 20:00 -0800, Ray Hurst wrote:
> It seemed that this question was better suited for the
development group 
> than in the general group.
> 
> How do you debug gdb?
> 
> In other words, if I have a problem with gdb itself how
do I go about 
> debugging the issue?

It's a little counter intuitive, but just as you compile
GCC
with GCC, you also debug GDB with GDB.

After all, GDB is just a program...

If you do it in the build directory, you will find that
there is already some infrastructure in place.   See the
existing file ".gdbinit", which sets some
breakpoints 
and changes the prompt.

Changing the prompt is perhaps the number one 
most important thing to do --- that way you can
tell by looking at the prompt whether you are 
talking to the gdb-being-debugged or to the
gdb-doing-the-debugging.




Re: How do you debug gdb?
user name
2008-02-19 15:41:00
On Feb 19, 2008 11:38 AM, Michael Snyder <msnyderspecifix.com> wrote:
>
> On Sun, 2008-02-17 at 20:00 -0800, Ray Hurst wrote:
> > It seemed that this question was better suited for
the development group
> > than in the general group.
> >
> > How do you debug gdb?
> >
> > In other words, if I have a problem with gdb
itself how do I go about
> > debugging the issue?
>
> It's a little counter intuitive, but just as you
compile GCC
> with GCC, you also debug GDB with GDB.
>
> After all, GDB is just a program...
>
> If you do it in the build directory, you will find
that
> there is already some infrastructure in place.   See
the
> existing file ".gdbinit", which sets some
breakpoints
> and changes the prompt.
>
> Changing the prompt is perhaps the number one
> most important thing to do --- that way you can
> tell by looking at the prompt whether you are
> talking to the gdb-being-debugged or to the
> gdb-doing-the-debugging.

A couple more things that mighn't be immediately clear.

If you're in the child gdb (the prompt is "(gdb)
") and you want to
get to the parent gdb, and you're using .gdbinit in the
build
directory, then you just type "i".  To get back to
the child gdb,
continue.  As in

(gdb) i
(top-gdb) c
(gdb)

Another useful thing is to rebuild gdb with -O0 if not done
already.

bash$ cd obj/gdb
bash$ make clean
bash$ make CFLAGS=-g
bash$ gdb ./gdb
[...]
(top-gdb)

Generally there's no need to debug bfd/etc. but one could
rebuild
those too as necessary.

Re: How do you debug gdb?
country flaguser name
South Africa
2008-02-18 02:53:41
On 17 Feb 2008 at 20:00, Ray Hurst wrote:

> It seemed that this question was better suited for the
development group 
> than in the general group.
> 
> How do you debug gdb?
> 
> In other words, if I have a problem with gdb itself how
do I go about 
> debugging the issue?
> 
You first have to build GDB with symbols, so you run
"config" and then 
"make".

If you debug gdb right in the directory it was created, you
automatically get a 
script loaded which will differentiate between a breakpoint
being hit in gdb 
and in the debug target.




[1-5]

about | contact  Other archives ( Real Estate discussion Medical topics )