How to extract kernel symbols from uImage (arm)?
I want to extract kernel symbols from u-boot image
The end goal is to debug system calls with gdb
The kernel is compiled with
and gcc uses the -g option (I checked)
# file arch/arm/boot/* arch/arm/boot/bootp: directory arch/arm/boot/compressed: directory arch/arm/boot/Image: data arch/arm/boot/install.sh: POSIX shell script text executable arch/arm/boot/Makefile: ASCII English text arch/arm/boot/uImage: u-boot legacy uImage, Linux-3.0.6, Linux/ARM, OS Kernel Image (Not compressed), 3044476 bytes, Thu Mar 22 18:13:40 2012, Load Address: 0x00008000, Entry Point: 0x00008000, Header CRC: 0xF689B805, Data CRC: 0x6BFE76DF arch/arm/boot/zImage: data
gdb cannot load uImage directly
I've tried this script http://forum.xda-developers.com/showthread.php?t=901152 .
# file arch/arm/boot/zImage_unpacked/* arch/arm/boot/zImage_unpacked/decompression_code: data arch/arm/boot/zImage_unpacked/initramfs.cpio+part3: data arch/arm/boot/zImage_unpacked/kernel.img: data arch/arm/boot/zImage_unpacked/padding_piggy: data arch/arm/boot/zImage_unpacked/piggy: data arch/arm/boot/zImage_unpacked/piggy.gz: gzip compressed data, from Unix, max compression arch/arm/boot/zImage_unpacked/piggy.gz+piggy_trailer: gzip compressed data, from Unix, max compression arch/arm/boot/zImage_unpacked/piggy_trailer: data arch/arm/boot/zImage_unpacked/sizes: ASCII text
kernel.img is not loaded by gdb
source to share