This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Remote debugging and dynamic libraries


Hello,

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
Reading symbols from /home/frank/test...done.
(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
4                       printf("bla");
(gdb) n
0x0000832c in ?? ()
(gdb) n
Cannot find bounds of current function
(gdb)
Cannot find bounds of current function
(gdb) bt
#0  0x0000832c in ?? ()
(gdb)

When test is statically linked everything works
as expected:

frank@linux:~/uclibc_kram/apdf> /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
Couldn't establish connection to remote target
Remote communication error: Connection reset by peer.
(gdb) target remote 192.168.1.133:5555
Remote debugging using 192.168.1.133:5555
0x000080e0 in ?? ()
(gdb) symbol-file test
Reading symbols from /home/frank/uclibc_kram/apdf/test...done.
(gdb) l
1       int main() {
2               while(1)
3               {
4                       printf("bla");
5
6               }
7
8       }
(gdb) c
Continuing.

Program received signal SIGINT, Interrupt.
0x000282b4 in write ()
(gdb) bt
#0  0x000282b4 in write ()
#1  0x00025bd0 in _IO_new_file_write ()
#2  0x0002513c in new_do_write ()
#3  0x00025084 in _IO_new_do_write ()
#4  0x000254ac in _IO_new_file_overflow ()
#5  0x00025d10 in _IO_new_file_xsputn ()
#6  0x0001a2e0 in vfprintf ()
#7  0x000088b0 in printf ()
#8  0x000081ec in main () at main.c:4

Therefore i tried to set a path for the
dynamic libraries but neither:

1)
   set solib-absolute-prefix /usr/local/arm/arm-linux/
nor:
2)
set solib-absolute-prefix /dev/null
set solib-search-path /usr/local/arm/arm-linux/lib

had any effect.

Any ideas how i can fix this?

Regards,
  Frank


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]