On Tue, Oct 27, 2009 at 12:27 PM, Daniel Jacobowitz <d...@false.org> 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.