code :: blocks debugger,“找不到当前函数的边界”

时间:2014-12-26 22:39:35

标签: c++ debugging gcc codeblocks

我想在code :: blocks中调试一个简单的c ++程序。 "运行光标"工作,但不是"步入"或者"下一行",这些给出了消息"无法找到当前功能的界限"。我做了什么:

  • 选中-g编译选项,-s one不是
  • 最新版本的代码::刚刚安装的块
  • 设置了正确的GDB可执行路径

我的设置:

  • Windows 7 64位
  • Code :: Blocks 13.12
  • GCC编译器

c ++代码:

#include <iostream>
#include <cstdio>
using namespace std;

int main()
{
    printf("qwe");
    printf("qwe");
    printf("qwe");
    printf("qwe");
    printf("qwe");
    return 0;
}

&#34;跑到线&#34;命令,它也说&#34;在? ()()&#34;,可能值得一提。

那么,我该怎么做才能让我有一个功能调试器呢?根本问题是什么?

1 个答案:

答案 0 :(得分:2)

最终解决了这个问题的是更改代码:: blocks编译器可执行文件来自&#34; mingw32-g ++。exe&#34;简单地说&#34; g ++。exe&#34;我终于通过学习从命令行使用gdb并发现它与代码:: blocks构建的可执行文件具有相同的问题而终于发现了这一点,但是如果我编译了与g ++命令完全相同的源代码。所以,这是唯一的区别,我改变它并且它起作用。不知道为什么,通过。