root@qemumips:/tmp# uname -a Linux qemumips 3.10.11-yocto-standard #1 PREEMPT Thu Sep 26 19:56:05 CST 2013 mips GNU/Linux root@qemumips:/tmp# root@qemumips:/tmp# file /bin/busybox.nosuid /bin/busybox.nosuid: ELF 32-bit MSB executable, MIPS, MIPS32 version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, BuildID[sha1]=633455006d4eb54e4e6cd6e10ab990e056bc11a5, stripped root@qemumips:/tmp# root@qemumips:/tmp# eu-objdump -d /bin/busybox.nosuid /bin/busybox.nosuid: elf32-elf_mips eu-objdump: cannot disassemble root@qemumips:/tmp#
It seems that our elfutils only supports disassemble on x86 platforms. To correctly disassemble elf binaries, some arch related header files are needed. In our project, only i386 and x86_64 related header files are available. SRC_URI += "\ file://i386_dis.h \ file://x86_64_dis.h \ " No relevant files for other archs are available in OE. I've sent an email to upstream asking about whether elfutils supports disassemble on on-x86 platforms. //Chen Qi
Looking at the contents under libcpu/, only x86 related contents are there. So I think it's possible that elfutils only supports disassemble on x86 platforms. But I'm still waiting for upstream reply. //Chen Qi
Confirmed from upstream: eu-objdump doesn't support no-x86 platform disassemble. See original email below: ''' On Mon, 2013-09-30 at 15:24 +0800, ChenQi wrote: > x86_64_dis.h and i386_dis.h are available under /libcpu, but no relevant > files for other archs. > So if I understand it right, eu-objdump only supports disassemble on x86 > platforms? Right? That is currently correct yes. Additional disassemblers are always welcome of course. Cheers, Mark ''' So mark this bug as RESOLVED/WONTFIX. //Chen Qi