gdb
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How does one get static procedure names?


From: Bruce Korb
Subject: Re: How does one get static procedure names?
Date: Tue, 27 Oct 2009 12:33:39 -0700

On Tue, Oct 27, 2009 at 12:27 PM, Daniel Jacobowitz <address@hidden> wrote:
> On Tue, Oct 27, 2009 at 11:56:46AM -0700, Bruce Korb wrote:
>> Sorry.   When you do a "bt" using gdb, you see the function
>> names, whether they be "static" or have global (external)
>> linkage.  The function backtrace_symbols(), on the other
>> hand, doe *not* print static scope function names.  Even if
>> it takes some work, I'd like to "fix" the constraint.  However,
>> I wasn't able to decipher the gdb source well enough to figure
>> out how it accomplished this feat.  So, is there some place
>> in the GDB source where I ought to be looking?
>
> You can't readily do so.  backtrace_symbols is using the dynamic
> symbol table, which is loaded into memory.  Local symbols are not
> added to the dynamic symbol table.
>
> GDB reads both the local symbol table and the DWARF/stabs debug
> information.
>
> You'd need an additional symbol table reader which read them off disk
> instead of out of RAM.

Exactly.  I know it'd be some work.  I think I need to
call:  dlopen(NULL, RTLD_NOW)

and then copy & fiddle code out of GDB.  yes?  :)
Or, do I have to figure out the actual file name and replace
NULL with that file name?  Either way....now what?
Just point me to some code & I ought to be okay.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]