在Ubuntu 12.04上建立二进制文件的clang 3.1无法使用gdb进行调试

时间:2012-09-04 11:33:59

标签: gdb llvm clang

ubuntu 12.04.1 尝试使用原始源clang + llvm 3.0,它的效果很好。在为clang ++添加-g选项之后,我可以使用gdb来使用符号+源调试文件。

但是如果我构建clang + llvm 3.1并使用预构建的二进制文件 http://llvm.org/releases/3.1/clang+llvm-3.1-x86_64-linux-ubuntu_12.04.tar.gz

clang ++ -g编译相同的示例源代码,然后使用gdb进行调试, 我无法列出源代码,也无法执行源代码,“next”命令将完成执行main函数。

有任何线索吗?

1 个答案:

答案 0 :(得分:2)

这是一个已知的错误,但仍未在主干中解决。

http://llvm.org/bugs/show_bug.cgi?id=13211

作为一种解决方法,您可以尝试以源文件名和行号而不是函数名的形式设置断点。

$(gdb)break main.cpp:5