2014-04-25 42 views
0

在Ubuntu中使用Netbeans IDE工作C++程序是非常新的。我编写了一个简单的Hello World程序,并尝试使用Step Into进行调试。当我从调试菜单中单击“步入选项”时,我以“Diassembly(main)”的名称打开了一个新窗口。调试过程没有以任何方式到达我的源代码行。我反复点击Step Into Function最后这个过程最终没有跟踪我的源代码行。但在调试输出窗口中,我得到了正确的结果。在Netbeans中调试C++

#include <iostream> 
using namespace std; 
int main() 
{ 
    cout<<"Hello"; 
    cout<<"World"; 
} 

为什么这个过程控制进入Diassembly(main)窗口?如何纠正这个问题?

+0

可能的重复。 http://stackoverflow.com/questions/20654524/dont-want-netbeans-debugger-to-go-to-disassembly-window – Superdrac

+0

我试着用eclipse IDE做同样的事情。它说:“无源可用”的主要()在0x80486a3“” –

+0

我也得到这个问题了,在一些项目上(在另一个项目上我有这个问题http://stackoverflow.com/questions/23850200/why-are -my-variables-out-scope)你是否最终找到了解决方案(除了“使用Eclipse”)? –

回答

2

首先,您必须通过单击要在源窗口中停止的行的行号(如果没有)在代码中切换断点。然后点击调试。 不要步入你不是从源代码构建的功能,只是跨过它。

+0

我试过了。但我得到的结果与我之前得到的结果一样。 –

+0

我不知道你是如何调试你的程序的,也许你做了错误的调试程序。 –

+0

很好的答案,谢谢它为我工作 – FieryCod

1

您必须-g选项编译,否则调试器将无法停在一个断点。至于拆卸窗口 - 我不能重现(我在Ubuntu 13中的Netbeans 7.4)。如果你不需要,你应该关闭窗口。

+0

如何如上所述更改编译设置?我对Netbeans非常陌生。你可以请怎么用-g选项编译? –

+1

@SmithDwayne - Netbeans调用'make'来编译,所以你应该在你的目录中有'Makefile'。查看这个文件 - “CFLAGS”变量(或类似的)定义了编译标志。 – HEKTO