首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >android内核上的objdump

android内核上的objdump
EN

Stack Overflow用户
提问于 2011-12-21 01:22:39
回答 2查看 2.9K关注 0票数 2

我使用了android linux内核,将其从gzip头文件中拆分并解压缩。但是,当我尝试从android ndk执行objdump来转储文件时,我得到了一个file format not recognized错误。

有人知道如何从二进制图像中获取符号表吗?

在我的android设备上,我可以执行以下操作来获取符号表: cat /proc/kallsyms

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-12-21 01:37:38

这并不是Android独有的--它发生在大多数(所有?)Linux系统。Linux内核( Android所基于的)的可引导映像不是正确的ELF二进制文件:

代码语言:javascript
复制
# file /boot/vmlinuz-2.6.38.7-desktop-1mnb2 
/boot/vmlinuz-2.6.38.7-desktop-1mnb2: Linux kernel x86 boot executable bzImage, version 2.6.38.7-desktop-1mnb2 (thomas@celeste.mandriva.com) #1 SMP Sun, RO-rootFS, root_dev 0x902, swap_dev 0x3, Normal VGA
# nm /boot/vmlinuz-2.6.38.7-desktop-1mnb2 
nm: /boot/vmlinuz-2.6.38.7-desktop-1mnb2: File format not recognized

可引导映像是通过将vmlinux kernel ELF binary包装在压缩容器中并添加一组引导和解压缩实用程序来创建的。如果您需要内核映像来进行调试。vmlinux文件正是您所需要的--我不知道它是否存在于Android NDK中,也不知道它在Android NDK中的位置。

票数 3
EN

Stack Overflow用户

发布于 2011-12-21 01:34:29

尝试使用nm

代码语言:javascript
复制
$ nm path/to/someobj
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8579370

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档