2014-01-08 2 views
0

모두 ~gdb를 사용하여로드 된 코어 덤프에서 심볼을 볼 수 없습니다

gdb를 사용하여로드 된 코어 덤프의 심볼을 볼 수 없습니다.

다음 순서로 코어 덤프 파일을로드했습니다.

$gdb 
(gdb) core-file vold.corefile 
[New LWP 3833] 
[New LWP 3834] 
[New LWP 3835] 
Core was generated by `/system/bin/vold'. 
Program terminated with signal 3, Quit. 
#0 0xb6eaffc8 in ??() 

(gdb) symbol-file ./out/target/product/msm8974/obj/EXECUTABLES/vold_intermediates/LINKED/vold 
Reading symbols from /home/p14291/MSM8974_KK/SYS/EF63/MSM8974_KK/out/target/product/msm8974/obj/EXECUTABLES/vold_intermediates/LINKED/vold...done. 

(gdb) bt 
#0 0xb6eaffc8 in ??() 
#1 0xb6ebd316 in ??() 
#2 0xb6ebd316 in ??() 
Backtrace stopped: previous frame identical to this frame (corrupt stack?) 

알다시피, 어떤 기호 정보도 볼 수 없습니다.

백 트레이스에서 기호 정보를 보는 방법은 무엇입니까?

답변

0

아무 기호 정보도 보이지 않습니다.

이것은 GDB에 잘못된 바이너리를로드 할 때 가장 자주 발생합니다. 모듈은 스트립 (이진 out/target/product/msm8974/obj/EXECUTABLES/vold가 코어 덤프를 생성 한 대상 시스템에 /system/bin/vold과 완전히 동일

gdb out/target/product/msm8974/obj/EXECUTABLES/vold vold.core

  • 확인 : 당신은

    • 은 GDB를 호출하는 표준 방법을 사용한다 - 하나의 바이너리가 다른 바이너리의 박탈 버전이라면 괜찮습니다.)