我无法使用gdb看到加载的coredump中的符号

时间:2014-01-08 02:40:06

标签: android linux debugging gdb coredump

所有〜

我无法使用gdb看到加载的coredump中的符号。

我按照以下顺序加载了coredump文件。

$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?)

如您所见,我看不到任何符号信息。

如何查看回溯的符号信息?

1 个答案:

答案 0 :(得分:0)

  

我看不到任何符号信息。

当您将错误的二进制文件加载到GDB中时,通常会发生这种情况。你应该

  • 使用规范方式调用GDB:

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

  • 确认您的二进制文件out/target/product/msm8974/obj/EXECUTABLES/vold与生成核心转储的目标系统上的/system/bin/vold完全相同(模数剥离 - 如果一个二进制文件是另一个二进制文件的剥离版本,那就是确定)。