我最近才刚开始遇到这个问题,我不知道它什么时候开始出现/是什么原因造成的.
我在这里有这个简单的测试程序:
#include <iostream>
int main()
{
return 0;
}
但是当我尝试正常运行时,它会创建一个stackdump.
Stack trace:
Frame Function Args
00CBC498 6101D93A (00000198, 0000EA60, 000000A4, 00CBC508)
00CBC5C8 610E2F3F (00000000, 60FC04E8, 00CBC658, 7794ABEE)
但是,当我尝试在GDB中运行它时,它显然无法这样做.
gdb: unknown target exception 0x406d1388 at 0x778edae8
Program received signal ?, Unknown signal.
0x778edae8 in RaiseException ()
from /cygdrive/c/WINDOWS/SYSTEM32/KERNELBASE.dll
(gdb) n
Single stepping until exit from function RaiseException,
which has no line number information.
[Thread 14880.0x11ac exited with code 1080890248]
[Thread 14880.0x3fd8 exited with code 1080890248]
[Thread 14880.0x3b24 exited with code 1080890248]
[Inferior 1 (process 14880) exited with code 010033211610]
这就是我的编译器的设置方式:
g++ -g -std=c++1y -Wall -c main.cpp -o main.o main.cpp compiled...
g++ -g -std=c++1y -Wall -o a main.o Successfully compiled!
知道我在这里做错了吗?
我正在使用的平台是Windows,我正在使用Cygwin作为我的开发环境.
注意:无论我在main.cpp中有什么,我仍然会得到上述的GDB错误.
我以前需要cygboost_filesystem.dll才能使boost_filesystem正常工作,我需要libgcc_s_sjlj-1.dll和libstdc 6,因为没有它们就无法工作.
最佳答案 将gdb更新为7.11.1-1实验发行版.