[lldb-dev] Debugging against an .so on Linux

Steve Pucci spucci at google.com
Tue Feb 18 12:01:01 PST 2014

Hi all,

I'm trying to debug an Android process where what I have is a .so that is
dynamically loaded by the Android runtime.  gdb is able to debug this case,
and I'm attempting to talk to the stock gdbserver.

I think maybe I have a chicken-and-egg problem:  I can't find where the .so
file has been loaded without getting the "image info address", and I can't
do that without having loaded the .so file.  Is this a supported
configuration (starting with a .so file on Linux instead of a fork+exec
executable)?  The .so file has no entry address and it has no DT_DEBUG
symbol (so ObjectFileELF::GetImageInfoAddress() fails to find an address).
 Do we need to find the executable file itself to get started?

I have code to download the library load locations via a gdbserver packet,
but I was hoping not to use it, and, more importantly to use more of the
existing DynamicLoaderPOSIXDYLD plug-in.  I'm going to need to be able to
set breakpoints in the dynamic loader the same way that the POSIX plugin
already knows how to do.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20140218/fc128eee/attachment.html>

More information about the lldb-dev mailing list