我有一个用Linux编写的程序(Ubuntu 10.10)。
编程和调试工作完美,直到我在代码中添加以下行:
mapfile = fopen(map_filename,"wb");
fwrite(map_header,1,20,mapfile); // <-- this is the problem line
fclose(mapfile);
我添加后,程序编译好了,但调试器现在不会启动。它立即失败,显示此消息:
Program completed, Exit code 0x177
error while loading shared libraries: unexpected PLT reloc type 0xcc
如果我使用&#34; fwrite&#34;删除该行,调试器将正常启动。
这个问题只发生在Netbeans内部。 当我使用命令行&#34; gdb&#34;进行调试时它也没有任何问题。
任何人都知道为什么会发生这种情况以及如何解决它?
P.S:最近这些问题开始了,所以我想也许它必须对系统更新做些什么,我不确定。答案 0 :(得分:1)
发现问题:
不久前,我从netbeans中删除了一些旧的C ++项目。它发现netbeans(至少是v7.0)记得我放在旧项目中的所有断点,它们甚至不再存在于IDE中。
我通过查看调试器控制台(Window-&gt; Debugging-&gt; Debugging Console)找到了这一点,并在&#34; gdb&#34;开始,它尝试从其他项目或不存在的项目设置所有这些断点(这是netbeans中的错误,顺便说一句)
解决方案:我只是清理了所有断点(在Window-&gt; Debugging-&gt; Breakpoints中),现在程序可以正常调试。
希望这对那些遇到类似问题的人有所帮助。