【问题标题】:No debugging information found from gdb从 gdb 中找不到调试信息
【发布时间】:2016-06-28 03:56:54
【问题描述】:

我正在处理一个 C 文件项目。这是make命令:

gcc -std=c99 -ggdb picaca.c -o aca -lm

它有分段错误。我用gdb回溯分段,但是找不到调试信息:

Program received signal SIGSEGV, Segmentation fault.
0x0000000200419a77 in ?? ()

我仔细检查了 gcc 命令中有 -g,并将 ulimit 设置为无限制。如何解决此错误?

【问题讨论】:

  • ?? 的另一种解释是,由于堆栈损坏等原因,您的地址无效。 bt 说什么,如果你输入 b main 会发生什么 - 它知道 main 在哪里吗?
  • 看起来像堆栈损坏。尝试通过合理的代码块来查看它发生的位置,或者对于初学者来说,在 valgrind 下运行您的可执行文件。

标签: gdb


【解决方案1】:

您是否启用了核心文件?如果在执行目录中看不到核心文件,请在命令行上尝试“ulimit -c unlimited”。

【讨论】:

    猜你喜欢
    • 2015-03-23
    • 2014-05-03
    • 1970-01-01
    • 1970-01-01
    • 2012-05-27
    • 2012-09-08
    • 1970-01-01
    • 2011-10-01
    相关资源
    最近更新 更多