RFC: Debugging libraries
On Mon, Apr 26, 1999 at 12:53:22PM -0600, Erik Andersen wrote on
> Comparing the outputs from 'dpkg -L libc6-dbg' and 'dpkg -L libgtk1.2-dbg'
> is enlightening. Seems that libc6-dbg gives us debugging shared libs, while
> libgtk1.2-dbg gives us _static_ libraries. Ugh. That would explain the
> symptoms I'm seeing. How does gdb know to use the libraries in
> /usr/lib/libc_debug when the -g flag is on? Curious.
It is very annoying (at least for me) that every debugging library does
something different. One package has shared debug libraries, another static
libraries with debugging info and another one shared debug libraries with
> How about this -- we have two packages, libgtk1.2, and libgtk1.2-dbg which
> replace&conflict with one another. The libgtk1.2 stuff is the normal
> stripped, no checking enabled, fast runtime stuff, and libgtk1.2-dbg contains
> the same libraries, but unstripped, with all extra checks turned on. That
> way, folks developing stuff would install libgtk1.2-dbg and could do their
> dirty work without changing their Makefiles. I but ugly, but it would
How about an addition to policy (or another document specifically for shared
libraries) to document how we handle this?
How can we handle it the best way, btw? I think the best thing to do would be
to add a directory with debugging libraries to our filesystem (e.g.
/usr/lib/debug) where the debugging libraries are located. This way everybody
debugging a shared binary could just set LD_LIBRARY_PATH=/usr/lib/debug and
would have every debugging information he likes.
Only one problem left: How could we tell gdb where to search the source if the
users installs the library source?
Waiting for comments