Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/159.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ QTCreator:GDB调试代码一次,然后放到程序集_C++_Qt_Debugging_Gdb - Fatal编程技术网

C++ QTCreator:GDB调试代码一次,然后放到程序集

C++ QTCreator:GDB调试代码一次,然后放到程序集,c++,qt,debugging,gdb,C++,Qt,Debugging,Gdb,使用Qt5.1.1 for Windows 32位(使用MinGW 4.8)进行调试时,GDB希望在第一次调试代码后进入DISASSEMBLY 我做了一个“普通C++”项目,插入一些简单的代码: int x = 5; cout << x << endl; return 0; 然后,一旦到达断点,良好运行将显示以下内容: >*stopped,reason="signal-received",signal-name="SIGTRAP",signal-meaning="

使用Qt5.1.1 for Windows 32位(使用MinGW 4.8)进行调试时,GDB希望在第一次调试代码后进入DISASSEMBLY

我做了一个“普通C++”项目,插入一些简单的代码:

int x = 5;
cout << x << endl;
return 0;
然后,一旦到达断点,良好运行将显示以下内容:

>*stopped,reason="signal-received",signal-name="SIGTRAP",signal-meaning="Trace/breakpoint trap",
frame={addr="0x7792000d",func="ntdll!LdrFindResource_U",args=[],
from="C:\\Windows\\system32\\ntdll.dll"},thread-id="2",stopped-threads="all"
dNOTE: INFERIOR SPONTANEOUS STOP sStopped.
dState changed from InferiorRunOk(11) to InferiorStopOk(14) [master]
dSIGTRAP CONSIDERED HARMLESS. CONTINUING.
sStopped: "signal-received"
>=thread-selected,id="2"
sThread 2 selected
<1283-thread-info
>1283^done,threads=[{id="2",target-id="Thread 7148.0x242c",frame=
{level="0",addr="0x7792000d",func="ntdll!LdrFindResource_U",args=[],
from="C:\\Windows\\system32\\ntdll.dll"},state="stopped"},
{id="1",target-id="Thread 7148.0x1bbc",
frame={level="0",addr="0x756a133d",func="KERNEL32!GetPrivateProfileStructA",
args=[],from="C:\\Windows\\syswow64\\kernel32.dll"},state="stopped"}],current-thread-id="2"
<1284-stack-list-frames 0 20
>1284^done,stack=[frame={level="0",addr="0x7792000d",func="ntdll!LdrFindResource_U",
from="C:\\Windows\\system32\\ntdll.dll"},
frame={level="1",addr="0x779af926",
func="ntdll!RtlQueryTimeZoneInformation",
from="C:\\Windows\\system32\\ntdll.dll"},frame={level="2",addr="0x75f45dd1",func="??"},
frame={level="3",addr="0x00000000",func="??"}]
<1285-stack-select-frame 0
<1286disassemble 0x7791fff9,0x77920071
<1287bb options:fancy,autoderef,dyntype vars: expanded:return,local,watch,inspect typeformats: formats: watchers:
    >1285^done
>&"disassemble 0x7791fff9,0x77920071\n"
>~"Dump of assembler code from 0x7791fff9 to 0x77920071:\n"
>~"   0x7791fff9 <ntdll!LdrFindResource_U+60953>:\t"
>&"Cannot access memory at address 0x7791fff9\n"
>1286^error,msg="Cannot access memory at address 0x7791fff9"
sDisassembler failed: Cannot access memory at address 0x7791fff9
*停止,原因=“结束步进范围”,帧={addr=“0x00401620”,func=“fu0_uuzst4cout”,参数[], file=“..\untitled8\main.cpp”, fullname=“C:\Users\Andrew\Desktop\untitled8\main.cpp”,line=“9”}, thread id=“1”,stopped threads=“全部”

错误运行表明:

>*stopped,reason="signal-received",signal-name="SIGTRAP",signal-meaning="Trace/breakpoint trap",
frame={addr="0x7792000d",func="ntdll!LdrFindResource_U",args=[],
from="C:\\Windows\\system32\\ntdll.dll"},thread-id="2",stopped-threads="all"
dNOTE: INFERIOR SPONTANEOUS STOP sStopped.
dState changed from InferiorRunOk(11) to InferiorStopOk(14) [master]
dSIGTRAP CONSIDERED HARMLESS. CONTINUING.
sStopped: "signal-received"
>=thread-selected,id="2"
sThread 2 selected
<1283-thread-info
>1283^done,threads=[{id="2",target-id="Thread 7148.0x242c",frame=
{level="0",addr="0x7792000d",func="ntdll!LdrFindResource_U",args=[],
from="C:\\Windows\\system32\\ntdll.dll"},state="stopped"},
{id="1",target-id="Thread 7148.0x1bbc",
frame={level="0",addr="0x756a133d",func="KERNEL32!GetPrivateProfileStructA",
args=[],from="C:\\Windows\\syswow64\\kernel32.dll"},state="stopped"}],current-thread-id="2"
<1284-stack-list-frames 0 20
>1284^done,stack=[frame={level="0",addr="0x7792000d",func="ntdll!LdrFindResource_U",
from="C:\\Windows\\system32\\ntdll.dll"},
frame={level="1",addr="0x779af926",
func="ntdll!RtlQueryTimeZoneInformation",
from="C:\\Windows\\system32\\ntdll.dll"},frame={level="2",addr="0x75f45dd1",func="??"},
frame={level="3",addr="0x00000000",func="??"}]
<1285-stack-select-frame 0
<1286disassemble 0x7791fff9,0x77920071
<1287bb options:fancy,autoderef,dyntype vars: expanded:return,local,watch,inspect typeformats: formats: watchers:
    >1285^done
>&"disassemble 0x7791fff9,0x77920071\n"
>~"Dump of assembler code from 0x7791fff9 to 0x77920071:\n"
>~"   0x7791fff9 <ntdll!LdrFindResource_U+60953>:\t"
>&"Cannot access memory at address 0x7791fff9\n"
>1286^error,msg="Cannot access memory at address 0x7791fff9"
sDisassembler failed: Cannot access memory at address 0x7791fff9
*停止,原因=“接收到信号”,信号名称=“SIGTRAP”,信号含义=“跟踪/断点陷阱”,
frame={addr=“0x7792000d”,func=“ntdll!LdrFindResource_”,args=[],
from=“C:\\Windows\\system32\\ntdll.dll”},thread id=“2”,stopped threads=“all”
注:下自发停止。
数据状态从较低的RUNOK(11)更改为较低的STOPOK(14)[主控]
被认为是无害的。持续的。
SSR:“接收到信号”
>=已选择线程,id=“2”
已选择sThread 2
1283^done,threads=[{id=“2”,target id=“Thread 7148.0x242c”,帧=
{level=“0”,addr=“0x7792000d”,func=“ntdll!LdrFindResource_”,args=[],
from=“C:\\Windows\\system32\\ntdll.dll”},state=“stopped”},
{id=“1”,target id=“Thread 7148.0x1bbc”,
frame={level=“0”,addr=“0x756a133d”,func=“KERNEL32!GetPrivateProfileStructA”,
args=[],from=“C:\\Windows\\syswow64\\kernel32.dll”},state=“stopped”},当前线程id=“2”
1284^done,stack=[frame={level=“0”,addr=“0x7792000d”,func=“ntdll!LdrFindResource_”,
from=“C:\\Windows\\system32\\ntdll.dll”},
frame={level=“1”,addr=“0x779af926”,
func=“ntdll!RtlQueryTimeZoneInformation”,
from=“C:\\Windows\\system32\\ntdll.dll”},frame={level=“2”,addr=“0x75f45dd1”,func=“?”},
frame={level=“3”,addr=“0x00000000”,func=“?”}]
~“将汇编程序代码从0x7791fff9转储到0x77920071:\n”
>~“0x7791fff9:\t”
>&“无法访问地址0x7791fff9处的内存\n”
>1286^错误,msg=“无法访问地址0x7791fff9处的内存”
sDisassembler失败:无法访问地址0x7791fff9处的内存

看起来由于某种原因,额外的线程没有在预期的时候退出,qtcreator/gdb说服自己ntdll中有断点,我想停止

我希望我能帮助你。我总是最难让Qt Creator正确显示调试符号。知道你并不孤单。几个月前我也问过同样的问题,但没有解决办法:。即使在安装了新版本(2.8.1)之后,这种行为仍在继续。