Christophe de Dinechin
2014-Jul-28 19:35 UTC
[LLVMdev] MacOSX: cache losing clang/llvm debug symbols with separate compilation…
Apparently, ccache loses debug symbols on Mavericks with clang/lldb. Here is a session illustrating the problem. I spent quite a bit of time figuring out that ccache was the culprit, so I thought I'd share also on the clang and LLVM mailing lists in case someone else runs into this. Here is a session illustrating the issue (same issue with C and C++ source files): % cat glop.cpp #include <iostream> int main() { std::cerr << "Hello World\n"; } % c++ -g glop.cpp -o glop % lldb glop Current executable set to 'glop' (x86_64). (lldb) b glop.cpp:5 Breakpoint 1: where = glop`main + 22 at glop.cpp:5, address = 0x00000001000011e6 (lldb) exit # So far so good. But with separate compilation, it breaks: % c++ -g -c glop.cpp -o glop.o % c++ -g glop.o -o glop % lldb glop Current executable set to 'glop' (x86_64). (lldb) b main.cpp:5 Breakpoint 1: no locations (pending). WARNING: Unable to resolve breakpoint to any actual locations. (lldb) exit % c++ --version Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn) Target: x86_64-apple-darwin13.3.0 Thread model: posix % uname -a Darwin somemachine.local 13.3.0 Darwin Kernel Version 13.3.0: Tue Jun 3 21:27:35 PDT 2014; root:xnu-2422.110.17~1/RELEASE_X86_64 x86_64 % ccache --version ccache version 3.1.9 My ccache is from MacPorts. It seems to be the latest as of today. Thanks for your help. Christophe
Tom Lane
2014-Jul-29 14:27 UTC
[LLVMdev] [ccache] MacOSX: cache losing clang/llvm debug symbols with separate compilation…
Christophe de Dinechin <christophe.de.dinechin at gmail.com> writes:> Apparently, ccache loses debug symbols on Mavericks with clang/lldb. Here is a session illustrating the problem. I spent quite a bit of time figuring out that ccache was the culprit, so I thought I'd share also on the clang and LLVM mailing lists in case someone else runs into this.FWIW, ccache and lldb seem to play together nicely for me, so I guess there's some other contributing factor in your case. I'm using: OSX 10.9.4 lldb 310.2.37 (from Xcode 5.1.1) self-compiled ccache 3.1.9 regards, tom lane