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”命令将完成执行主函数。
有什么线索吗?
最佳答案
这是一个已知错误,在主干中尚未解决。
http://llvm.org/bugs/show_bug.cgi?id=13211
作为解决方法,您可以尝试以源文件名和行号而不是函数名称的形式设置断点。
$(gdb) 中断 main.cpp:5
关于gdb - clang 3.1 在 Ubuntu 12.04 上构建的二进制文件无法使用 gdb 进行调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12262641/