clang 3.1 在 Ubuntu 12.04 上构建的二进制文件无法使用 gdb 进行调试
Posted
技术标签:
【中文标题】clang 3.1 在 Ubuntu 12.04 上构建的二进制文件无法使用 gdb 进行调试【英文标题】:clang 3.1 built binary on Ubuntu 12.04 cannot debug with gdb 【发布时间】:2012-09-04 11:33:58 【问题描述】: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”命令将完成主函数的执行。
有什么线索吗?
【问题讨论】:
【参考方案1】:这是一个在trunk中仍未解决的已知错误。
http://llvm.org/bugs/show_bug.cgi?id=13211
作为一种解决方法,您可以尝试以源文件名和行号的形式设置断点,而不是函数名。
$(gdb) 中断 main.cpp:5
【讨论】:
以上是关于clang 3.1 在 Ubuntu 12.04 上构建的二进制文件无法使用 gdb 进行调试的主要内容,如果未能解决你的问题,请参考以下文章
我在 ubuntu 12.04 中的 postgresql *.conf 文件在哪里?