This is the mail archive of the gdb@sources.redhat.com 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]

Help: cannot break into shared libraries on LinuxPPC


Hello,

I have a problem that the gdb cannot break into the shared library -- actually, 
it successfully breaks into the very first function defined in the shared 
library source file(i.e. libPrint() in printlib.c, see the following example), 
but failed to break into the other functions in that same source file (i.e. 
libErrPrint() in printlib.c).

This was run with Linux2.2.17 on PowerPC. Other information:
gcc version 2.95.3, GNU ld and ar version 2.10.91.

Please see below the gdb output and the shell script used to create the 
executable and shared library.

Any idea what went wrong?
Thanks,
Yuming


The gdb output:
it didn't break into libErrPrint().
------------------------------------------------------------------
... ...
Breakpoint 1, libPrint (a=3) at printlib.c:9
9           b = a;
(gdb) n 
10          printf(">>>libPrint, %d\n",b);
(gdb) 
>>>libPrint, 3
11      }
(gdb) 
main () at main.c:13
13              libErrPrint(3);
(gdb) step
0x30025fc4 in .LC0 () from /lib/ld.so.1
(gdb) n
Single stepping until exit from function .LC0, 
which has no line number information.

Breakpoint 2, 0x0ffdf4ac in libErrPrint (a=268367100) 
from /home/mark/test/sharedlib/libmp_shr.so
(gdb) 
Single stepping until exit from function libErrPrint, 
which has no line number information.
>>>libErrPrint, 3
main () at main.c:14
14          return(0);

/* now returned back to main */
----------------------------------------------------------------


The example shell script used to create the shared library and executable (ttt):
----------------------------------------------------------------------
LIBPRE3=/home/mark/test/sharedlib

gcc -g -fPIC -c -o printlib.o printlib.c
ar r libfp_shr.a printlib.o


#create the shared library libmp_shr.so
ld -shared  -soname libmp_shr.so -o libmp_shr.so -L$LIBPRE3 --whole-archive -
lfp_shr
ldconfig -l ../sharedlib/libmp_shr.so

#create executable ttt
gcc -g -I../sharedlib -L../sharedlib -o ttt main.c -lmp_shr
----------------------------------------------------------------
 
 


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