【问题标题】:Netbeans C/C++ 7.4 failed to launch up GDB 7.6 on Ubuntu 12.04Netbeans C/C++ 7.4 无法在 Ubuntu 12.04 上启动 GDB 7.6
【发布时间】:2013-11-17 02:24:20
【问题描述】:

我在 Ubuntu 12.04 上按默认配置编译和安装了 GNU 调试器 7.6。但是每次我开始调试C程序时,即使是Netbeans 7.4中的函数foo或最简单的主函数Hello World!,它都会提示以下内容

GDB has unexpectedly stopped with return 127

编译成功后。我的问题是,如何找到有关此错误的更多信息,返回值为 127 ?

PS:回到 Ubuntu 12.04 附带的 GNU 调试器 7.4 就没有这样的问题。在我拥有apt-get purge gdb 并从最新源手动安装 GDB 以使用 Netbeans 7.4 后,错误开始发生。无论如何,我必须将 GDB 7.6 用于新的标准 C++。欢迎任何建议!谢谢。

【问题讨论】:

    标签: ubuntu netbeans gdb


    【解决方案1】:

    GDB 意外停止并返回 127

    这可能意味着您构建的 GDB 无法启动。你需要弄清楚为什么。解决此问题的最佳方法是尝试在 Netbeans 之外复制该问题。

    运行gdb /bin/date 是否会让您进入(gdb) 提示符?

    Netbeans 中也可能有某种gdb console,可以让你看到 GDB 对什么不满。

    如果一切都失败了,您可以运行strace -s1024 -o /tmp/strace.out -fve trace=execve netbeans,然后尝试调用 GDB。查看/tmp/strace.out 应该会告诉您gdb 是如何被调用的,以及使用了哪些环境变量。一旦你有了它,你应该能够在 netbeans 之外复制失败,看看是什么原因。

    【讨论】:

    • 首先感谢您第一个回复。是的,我可以在user@linux: ~$ gdb 之后得到 (gdb) 提示。但是 Netbeans 中的 gdb 控制台是空白的,而对话框提示 127。我会尝试 strace 并尽快回复您。
    【解决方案2】:

    这是gdb 找不到SHELL 时可能出现的错误。

    解决办法是设置SHELL变量:

    export SHELL=/bin/bash
    

    对于permanent solution,,请将行添加到~/.profile

    重新启动将加载.profile 脚本并解决问题。
    或者您可以在运行 eclipse 之前在终端窗口中手动设置它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-12-03
      • 1970-01-01
      • 2013-05-14
      • 1970-01-01
      • 2012-12-20
      • 2013-01-07
      • 2014-02-04
      相关资源
      最近更新 更多