最近在调试uboot的代码时,用的新版本的uboot,lowlevel_init函数里是空的,而且在链接文件中也没有发现对lowlevel_init.o的链接。在bl lowlevel_init 之前和之中加了两个电灯,发现在bl之后的部分并没有被执行,所以想看看具体程序有没有运行这个函数。在网上找反汇编bin文件的时候发现有朋友提供的方法,很好用。
使用arm-linux 工具链里面的arm-linux-objdump 就能反汇编
cd到bin文件所在的目录, 在命令行下输入:
arm-linux-objdump -D -b binary -m arm xxx.bin > xxx.asm
参数:
-D 反编译所有代码
-m 主机类型, arm
-b 文件格式, binary
对于ELF格式的文件只要一个-D参数即可
就可以把xxx.bin反汇编到xxx.asm文件