C++ gdb核心无法访问内存

C++ gdb核心无法访问内存,c++,c,linux,unix,gdb,C++,C,Linux,Unix,Gdb,当我使用gdb时,检查核心文件。我发现我可以从GDB追踪来源。 gdb给出>: (gdb) bt #0 0x00b677a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2 #1 0x00ba77f5 in raise () from /lib/tls/libc.so.6 #2 0x00ba92f1 in abort () from /lib/tls/libc.so.6 #3 0x0804c7a6 in segmentViolation (

当我使用gdb时,检查核心文件。我发现我可以从GDB追踪来源。 gdb给出>:

(gdb) bt
#0  0x00b677a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x00ba77f5 in raise () from /lib/tls/libc.so.6
#2  0x00ba92f1 in abort () from /lib/tls/libc.so.6
#3  0x0804c7a6 in segmentViolation (sig=11) at util.c:49
#4  <signal handler called>
#5  0x34393930 in ?? ()
#6  0x424f0a0d in ?? ()
#7  0x53455459 in ?? ()
#8  0x3332323a in ?? ()
#9  0x0d303936 in ?? ()
#10 0x0000000a in ?? ()
#11 0x00000000 in ?? ()
(gdb) frame
#0  0x00b677a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
(gdb) info threads
  3 process 12059  0x00b677a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
  2 process 12061  0x00b677a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
* 1 process 12060  0x00b677a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
(gdb) up
#1  0x00ba77f5 in raise () from /lib/tls/libc.so.6
(gdb) up
#2  0x00ba92f1 in abort () from /lib/tls/libc.so.6
(gdb) up
#3  0x0804c7a6 in segmentViolation (sig=11) at util.c:49
49      util.c: No such file or directory.
        in util.c
(gdb) up
#4  <signal handler called>
(gdb) up
#5  0x34393930 in ?? ()
(gdb) up
#6  0x424f0a0d in ?? ()
(gdb) info stack
#0  0x00b677a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x00ba77f5 in raise () from /lib/tls/libc.so.6
#2  0x00ba92f1 in abort () from /lib/tls/libc.so.6
#3  0x0804c7a6 in segmentViolation (sig=11) at util.c:49
#4  <signal handler called>
#5  0x34393930 in ?? ()
#6  0x424f0a0d in ?? ()
#7  0x53455459 in ?? ()
#8  0x3332323a in ?? ()
#9  0x0d303936 in ?? ()
#10 0x0000000a in ?? ()
#11 0x00000000 in ?? ()
(gdb) frame 5
#5  0x34393930 in ?? ()
(gdb) frame 10
#10 0x0000000a in ?? ()
(gdb) info locals
No symbol table info available.
(gdb) info frame
Stack level 10, frame at 0xb7fe5378:
 eip = 0xa; saved eip 0x0
 called by frame at 0xb7fe537c, caller of frame at 0xb7fe5374
 Arglist at 0xb7fe5370, args: 
 Locals at 0xb7fe5370, Previous frame's sp is 0xb7fe5378
 Saved registers:
  eax at 0xb7fe50b4, ecx at 0xb7fe50b0, edx at 0xb7fe50ac, ebx at 0xb7fe50a8, ebp at 0xb7fe50a0,
  esi at 0xb7fe509c, edi at 0xb7fe5098, eip at 0xb7fe5374, cs at 0xb7fe50c4, ss at 0xb7fe50d0, ds at 0xb7fe5094,
  es at 0xb7fe5090, fs at 0xb7fe508c, gs at 0xb7fe5088
(gdb) frame 9
(gdb)bt
#来自/lib/ld linux.so.2的_dl_sysinfo_int80()中的0 0x00b677a2
#/lib/tls/libc.so.6中的提升()中有1 0x00ba77f5
#2 0x00ba92f1位于/lib/tls/libc.so.6中的abort()中
#3 0x0804c7a6在util.c:49处分段冲突(sig=11)
#4  
#5 0x343930英寸??()
#6 0x424f0a0d英寸??()
#7 0x53455459英寸??()
#8 0x3332323a英寸??()
#9 0x0d303936英寸??()
#10 0x0000000a英寸??()
#11 0x00000000英寸??()
(gdb)框架
#来自/lib/ld linux.so.2的_dl_sysinfo_int80()中的0 0x00b677a2
(gdb)信息线程
3在/lib/ld linux.so的_dl_sysinfo_int80()中处理12059 0x00b677a2
2在/lib/ld linux.so的_dl_sysinfo_int80()中处理12061 0x00b677a2
*1在/lib/ld linux.so的_dl_sysinfo_int80()中处理12060 0x00b677a2
(gdb)向上
#/lib/tls/libc.so.6中的提升()中有1 0x00ba77f5
(gdb)向上
#2 0x00ba92f1位于/lib/tls/libc.so.6中的abort()中
(gdb)向上
#3 0x0804c7a6在util.c:49处分段冲突(sig=11)
49 util.c:没有这样的文件或目录。
在util.c中
(gdb)向上
#4  
(gdb)向上
#5 0x343930英寸??()
(gdb)向上
#6 0x424f0a0d英寸??()
(gdb)信息堆栈
#来自/lib/ld linux.so.2的_dl_sysinfo_int80()中的0 0x00b677a2
#/lib/tls/libc.so.6中的提升()中有1 0x00ba77f5
#2 0x00ba92f1位于/lib/tls/libc.so.6中的abort()中
#3 0x0804c7a6在util.c:49处分段冲突(sig=11)
#4  
#5 0x343930英寸??()
#6 0x424f0a0d英寸??()
#7 0x53455459英寸??()
#8 0x3332323a英寸??()
#9 0x0d303936英寸??()
#10 0x0000000a英寸??()
#11 0x00000000英寸??()
(gdb)第5帧
#5 0x343930英寸??()
(gdb)第10帧
#10 0x0000000a英寸??()
(gdb)本地信息
没有可用的符号表信息。
(gdb)信息帧
堆栈级别10,0xb7fe5378处的帧:
eip=0xa;已保存的eip 0x0
由0xb7fe537c处的帧调用,0xb7fe5374处的帧调用方
0xb7fe5370处的Arglist,args:
局部变量位于0xb7fe5370,上一帧的sp为0xb7fe5378
保存的寄存器:
0xb7fe50b4处的eax,0xb7fe50b0处的ecx,0xb7fe50ac处的edx,0xb7fe50a8处的ebx,0xb7fe50a0处的ebp,
0xb7fe509c处的esi、0xb7fe5098处的edi、0xb7fe5374处的eip、0xb7fe50c4处的cs、0xb7fe50d0处的ss、0xb7fe5094处的ds、,
es位于0xb7fe5090,fs位于0xb7fe508c,gs位于0xb7fe5088
(gdb)第9帧

有人能帮我吗!,是海德克

看起来您从库中删除了符号。不要这样做,您应该会看到回溯。

剥离库是一种可能性。然而,这看起来更像是一堆被打碎的东西。看看到处都是的地址,从0x00000000开始。@David Hammen-正确-换行符(0a0d),后跟ASCII“SETY322:”(0x53455459 0x3332323a)