Hi Stefan, what you are describing should work out of the box, so the fact that you are having to add the symbols manually is a bug. I haven't tried it with the apache binary specifically, but lldb can certainly find external debug symbols for libc (definitely on ubuntu 14.04, as that's what I use). We need to figure out what is different in your case. The most important function here is SymbolVendorELF::CreateInstance. Could you step through that function, and see why it fails to find the file?
On 7 May 2016 at 19:45, Stefan Kratochwil via lldb-dev <lldb-dev@lists.llvm.org> wrote: > Hi, > > I need to gather information about variables on the stack frames of a given > program, lets say apache2 (httpd), using the C++ flavour of the lldb > scripting bridge. > > Now, if I attach to the corresponding process id, lldb does not find any > debug symbols, although I have installed the debug symbols package for > apache2 (apache2-dbg). > > If I use the lldb cli, I have to use > 'target symbols load /usr/lib/debug/usr/sbin/apache2' > (or any other path under /usr/lib/debug, depending on the stack frame / > module I am currently looking at) to load the corresponding debug symbols. > > However, if I try the same with gdb, then it automagically uses the binaries > under /usr/lib/debug (the non-stripped binaries from any *-dbg package are > located here) for symbolification. > > > Now, there are two questions for me: > > 1.: Is there a way to let lldb automagically load debug symbols from > /usr/lib/debug, if there are any? > > 2.: If not, how can I do this manually using the C++ API? > The SBTarget class does not have suitable methods for this - the closest > thing is SBTarget#AddModule(), but this gives me a _new_ module, instead of > associating a symbolfile with an existing one. The code path of > CommandObjectTarget.cpp#AddModuleSymbols() seems not to be reflected in the > scripting bridge, or at least I haven't found it yet. You can use SBDebugger::HandleCommand to execute any command which does have an API equivalent. It's not ideal, but it works. :) cheers, pl _______________________________________________ lldb-dev mailing list lldb-dev@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev