Setting breakpoints where duplicate symbols are present

Jaimon Jose jjaimon@yahoo.com
Sat May 5 02:57:00 GMT 2007


This may be a trivial question.  I'm kind of stuck on this and didn't
find a way to work around.

I have a  process where multiple libraries are loaded.  Some of them
have duplicate symbols  ( private copies of the same symbol and the
libraries are linked with -Bsymbolic for a reason ).  I can't see the
symbol from the library in context (  in dbx I could do this by
qualifying the symbol by the library name.  For eg. `libfoo.so.1`foo_bar
) when I try to set a breakpoint or inspect the symbol.  It will always
go to a symbol from a library which is already resolved where as the one
that's getting executed is from the local library.  Because of this, the
breakpoints are never hit.

My questions are:
1. How do I inspect all the symbols of the same name in the process
space?  ( I tried loading the symbol from each library
load-symbol-file.  It didn't help either. In case of ambiguity, dbx used
to show all symbols qualified with the library name and let us choose
the right one)
2. How do I qualify a symbol with the library name where it belongs to?
( for eg.  `libfoo.so`foo_bar )

Appreciate your help
--jaimon



More information about the Gdb mailing list