<div class="gmail_quote">On Tue, Feb 28, 2012 at 10:25 PM, Greg Clayton <span dir="ltr"><<a href="mailto:gclayton@apple.com">gclayton@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
> Ironically the symbolizer works great on gcc-compiled binaries,<br>
> but fails on clang-compiled binaries.<br>
> It provides some info but it's dead wrong (point into some<br>
> random STL source files).<br>
> objdump -dlS shows<br>
> correct info for the binaries, and I guess you mostly work with<br>
> clang-compiled binaries.<br>
> So are there any known problems? What may I be missing?<br>
<br>
Not that we know of. Clang binaries work great on MacOSX and symbolicate just fine. If you have any quick examples where address lookups fail, please send me examples off the list.<br><br></blockquote><div><br></div><div>
I've tracked down the problem.</div><div>When I build the lookup example as</div><div>$ clang++ main.cpp -I../../include -llldb -g -frtti</div><div>It works.</div><div>However when I build it as:</div><div><div>$ clang++ main.cpp -I../../include -llldb -g -frtti <b>-fPIE -pie</b></div>
</div><div>It fails to symbolize itself. While objdump -dSl symbolizes it (shows line numbers inside of functions). If I build a program with gcc with -fPIE -pie, it also able to symbolize itself (with lldb).</div><div>So, the problem seems to be in tricky interaction of clang, lldb and -pie.</div>
<div>It's all Linux/amd64 and tip clang.</div><div><br></div></div>