[Lldb-commits] [PATCH] Reorder debug symbol search path on linux

Pavel Labath labath at google.com
Fri Feb 13 01:38:54 PST 2015

This is google's custom version of ubuntu, but I don't think they've changed anything in this respect.
$ dpkg -l libc6:amd64
ii  libc6:amd64                                           2.19-0ubuntu6.5                                     amd64        Embedded GNU C Library: Shared libraries

$ objdump -j .gnu_debuglink -s /lib/x86_64-linux-gnu/libc.so.6

/lib/x86_64-linux-gnu/libc.so.6:     file format elf64-x86-64

Contents of section .gnu_debuglink:
 0000 6c696263 2d322e31 392e736f 00000000  libc-2.19.so....
 0010 ae65f08d                             .e..

Funnily enough, GDB seems to manage to find the debug information just fine. Maybe it just detects it's the same file underneath and skips it. I'll hold off from committing and try to investigate more...


Comment at: test/functionalities/unwind/noreturn/TestNoreturnUnwind.py:47-49
@@ -46,3 +46,5 @@
         for f in thread.frames:
-            if f.GetFunctionName() == "abort":
+            # We use endswith() to look for abort() since some C libraries mangle the symbol into
+            # __GI_abort or similar.
+            if f.GetFunctionName().endswith("abort"):
emaste wrote:
> This is needed because you now have debug data for libc?

I have a note that it would be nice to keep resolving the symbol to "abort" and not some internal libc mess. However, this is a separate issue (ps, gdb also resolves this do __GI_abort).



More information about the lldb-commits mailing list