List Info

Thread: wrong lib address




wrong lib address
country flaguser name
China
2007-08-30 05:21:12
Hi

	I use gdbserver to debug my program. The problem is  gdb
can't load
library file correctly.
	Belowed is snapshot for my debug process. I think I have
set the
right path for loading library file.

metrodev:/home/chenxi # ppc_8xx-ldd metro.elf 
        libpthread.so.0 =>
/opt/montavista/pro/devkit/ppc/8xx/target/lib/libpthread.so.
0 (0xdead1000)
        librt.so.1 =>
/opt/montavista/pro/devkit/ppc/8xx/target/lib/librt.so.1
(0xdead2000)
        libstdc++.so.5 =>
/opt/montavista/pro/devkit/ppc/8xx/target/usr/lib/libstdc++.
so.5
(0xdead3000)
        libm.so.6 =>
/opt/montavista/pro/devkit/ppc/8xx/target/lib/libm.so.6
(0xdead4000)
        libgcc_s.so.1 =>
/opt/montavista/pro/devkit/ppc/8xx/target/lib/libgcc_s.so.1
(0xdead5000)
        libc.so.6 =>
/opt/montavista/pro/devkit/ppc/8xx/target/lib/libc.so.6
(0xdead6000)
        /lib/ld.so.1 =>
/opt/montavista/pro/devkit/ppc/8xx/target/lib/ld.so.1
(0xdead7000)

metrodev:/home/chenxi/cpu_io_v106_af/cpu_v106_af/cpu_v/Debug
# ppc-linux-gdb
metro.elf 
GNU gdb 6.6
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public
License, and you are
welcome to change it and/or distribute copies of it under
certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show
warranty" for details.
This GDB was configured as "--host=i686-pc-linux-gnu
--target=ppc-linux"...
===========================================================
(gdb) set solib-absolute-prefix
/opt/montavista/pro/devkit/ppc/8xx/target/
============================================================
==
(gdb) target remote 192.168.70.99:1234
Remote debugging using 192.168.70.99:1234
_start () at ../sysdeps/powerpc/powerpc32/dl-start.S:33
33      ../sysdeps/powerpc/powerpc32/dl-start.S: No such
file or directory.
        in ../sysdeps/powerpc/powerpc32/dl-start.S
Current language:  auto; currently asm
(gdb) b main
Breakpoint 1 at 0x1000a5cc: file ../working/src/root.cpp,
line 232.
(gdb) list
28      in ../sysdeps/powerpc/powerpc32/dl-start.S
(gdb) continue
Continuing.
Error while mapping shared library sections:
/mnt/cf/shared/lib/libpthread.so.0: No such file or
directory.
Error while mapping shared library sections:
/mnt/cf/shared/lib/librt.so.1: No such file or directory.
Error while mapping shared library sections:
/mnt/cf/shared/lib/libstdc++.so.5: No such file or
directory.
Error while mapping shared library sections:
/mnt/cf/shared/lib/libm.so.6: No such file or directory.

Breakpoint 1, main (argc=2147483016, argv=0xfc32da4) at
../working/src/root.cpp:232
232             pthread_attr_init( &init_attr );
Current language:  auto; currently c++
(gdb) info sharedlibrary 
>From        To          Syms Read   Shared Object
Library
0x30001f90  0x30013760  Yes
/opt/montavista/pro/devkit/ppc/8xx/target/lib/ld.so.1
                        No         
/mnt/cf/shared/lib/libpthread.so.0
                        No         
/mnt/cf/shared/lib/librt.so.1
                        No         
/mnt/cf/shared/lib/libstdc++.so.5
                        No         
/mnt/cf/shared/lib/libm.so.6
0x0fd7da40  0x0fd86f3c  Yes
/opt/montavista/pro/devkit/ppc/8xx/target/lib/libgcc_s.so.1
0x0fc32ad0  0x0fd3a1fc  Yes
/opt/montavista/pro/devkit/ppc/8xx/target/lib/libc.so.6
(gdb) 

I don't know why the path changed to /mnt/cf/shared/lib,
this is my target
lib path. Maybe I create the related dir can solve the
problem, but I am
glad to know the essential reason and the related solution.

Thx,
Xi
	


[1]

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