Mirror of the gdb mailing list
 help / color / mirror / Atom feed
* Differentiating symbols in multiple copies of shared libraries
@ 2010-12-09 15:50 Avi Gozlan
  2010-12-09 21:53 ` Tom Tromey
  0 siblings, 1 reply; 4+ messages in thread
From: Avi Gozlan @ 2010-12-09 15:50 UTC (permalink / raw)
  To: 'gdb@sourceware.org'; +Cc: Avi Gozlan

Hello,

In an implementation of a multi-threaded program we need to have multiple instances of the same text residing in different virtual addresses. For this purpose different copies of the object file are loaded using dlopen().

We did not find a way for GDB to refer to a symbol in a specific copy of the object file (other then referring to the specific address). I know that DBX supports this by qualifying `<shared object name>`<function name>. Is there similar feature in GDB?

Quoting Daniel J. from a message posted in May 2007 it seemed that this issue was already known:

"> 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 )

Basically, you can't.  Yet.  We know we need to fix this."

Is this fixed?

Please note that we need to differentiate between symbols not only for defining breakpoints but for other needs such as disassembly, backtrace as well.

Your input regarding this issue will be appreciated.

Avi


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2011-01-27 20:52 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-12-09 15:50 Differentiating symbols in multiple copies of shared libraries Avi Gozlan
2010-12-09 21:53 ` Tom Tromey
2011-01-23 12:07   ` Avi Gozlan
2011-01-27 20:52     ` Tom Tromey

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox