public inbox for gdb@sourceware.org
 help / color / mirror / Atom feed
From: Frank Meerkoetter <frank@betaversion.net>
To: Daniel Jacobowitz <drow@false.org>
Cc: gdb@sources.redhat.com
Subject: Re: Remote debugging and dynamic libraries
Date: Mon, 31 Oct 2005 19:55:00 -0000	[thread overview]
Message-ID: <436676B4.9030603@betaversion.net> (raw)
In-Reply-To: <20051027144115.GA24055@nevyn.them.org>

Daniel Jacobowitz wrote:

>>i'm trying to remote debug a program running on an arm system running
>>linux but i ran into various problems. If i interrupt the
>>debugged program i can't get symbolic information where it stopped.
>>Also backtraces don't seem to work.
>>
>>frank@linux:~/> /usr/local/bin/arm-linux-gdb
>>GNU gdb 6.3
>>This GDB was configured as "--host=i686-pc-linux-gnu --target=arm-linux".
>>(gdb) target remote 192.168.1.133:5555
>>Remote debugging using 192.168.1.133:5555
>>0x400028b0 in ?? ()
>>(gdb) symbol-file test
>>    
>>
>
>Don't do this.  Use "file", not "symbol-file".
>
>Can you tell me where you found anything which suggested that you
>should use symbol-file?  This bug is reported several times a year, and
>I still don't know where the incorrect documentation is - I don't think
>it's part of GDB.
>  
>
You're right. I picked it up in some mailinglist archive while searching for
a solution to my problem.

>Without an "exec file" loaded, which symbol-file does not do, GDB won't
>find the dynamic loader or be able to load shared libraries.
>  
>
>>1)
>>   set solib-absolute-prefix /usr/local/arm/arm-linux/
>>    
>>
>
>This is the correct way - IFF the directory under that path looks like
>a root filesystem.  If it's laid out like an old-style cross toolchain,
>this may not work.  Paths should match the paths on the target.
>  
>
I gave it a try using "file test" and
"set solib-absolute-prefix /usr/local/arm/arm-linux/" but had no success 
so far.

frank@linux:~/uclibc_kram/apdf> arm-linux-gdb
GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc.
This GDB was configured as "--host=i686-pc-linux-gnu --target=arm-linux".
(gdb) file test
Reading symbols from /home/frank/test...done.
(gdb) set solib-absolute-prefix /usr/local/arm/arm-linux/
(gdb) target remote 192.168.1.133:5555
Remote debugging using 192.168.1.133:5555
0x000080e0 in ?? ()
(gdb) l
1       int main() {
2               while(1)
3               {
4                       printf("bla");
5
6               }
7
8       }
(gdb) b 1
Breakpoint 1 at 0x8428: file main.c, line 1.
(gdb) c
Continuing.

Breakpoint 1, main () at main.c:1
1       int main() {
(gdb) n
2               while(1)
(gdb) n
0x0001a12c in ?? ()
(gdb) n
Cannot find bounds of current function
(gdb) n
Cannot find bounds of current function
(gdb) n
Cannot find bounds of current function

(gdb) The program is running.  Exit anyway? (y or n) y
frank@linux:~/uclibc_kram/apdf> arm-linux-gdb
GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc.
This GDB was configured as "--host=i686-pc-linux-gnu --target=arm-linux".
(gdb)  file test
Reading symbols from /home/frank/test...done.
(gdb) set solib-absolute-prefix /usr/local/arm/arm-linux/
(gdb) target remote 192.168.1.133:5555
Remote debugging using 192.168.1.133:5555
0x000080e0 in ?? ()
(gdb) c
Continuing.

Program received signal SIGINT, Interrupt.
0x000080e0 in ?? ()
(gdb) c
Continuing.

Program received signal SIGINT, Interrupt.
0x000282b4 in ?? ()
(gdb) bt
#0  0x000282b4 in ?? ()

test depends only on the libc and the dynamic linker.
On the target these files are installed in /lib. The GDB
should be able to found them in
/usr/local/arm/arm-linux/lib.

Any ideas how i can solve this problem?

Regards,
  Frank

  reply	other threads:[~2005-10-31 19:55 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-10-27  8:56 frank
     [not found] ` <20051027143943.GA23938@nevyn.them.org>
2005-10-27 14:41   ` Daniel Jacobowitz
2005-10-31 19:55     ` Frank Meerkoetter [this message]
2005-11-07  0:12       ` Daniel Jacobowitz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=436676B4.9030603@betaversion.net \
    --to=frank@betaversion.net \
    --cc=drow@false.org \
    --cc=gdb@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).