addnote : zImage is not a big-endian 32-bit ELF image

Todd Inglett tinglett at
Wed Jul 24 12:12:17 EST 2002

On Thu, 2002-07-18 at 10:34, Srikrishnan Sundararajan wrote:
> Hi,
> I'm trying to compile the kernel for ppc64 on an
> RS6000 machine. While doing 'make zImage', I get the
> following error:
> ../addnote zImage
> zImage is not a big-endian 32-bit ELF image.
> make[1]: *** [zImage] Error 1
> make[1]: Leaving directory
> '/usr/src/linux-2.4.13.Suse/arch/ppc64/boot'

Try "file arch/ppc64/boot/zImage".  Is it a 32-bit ELF executable?  If
not, delete it and make zImage again, this time watching carefully how
zImage gets compiled & linked.

The most obvious problem would be that you are cross compiling on some
other architecture (e.g. x86 producing x86 binaries).  If so, read
arch/ppc64/boot/Makefile and you will need to set CROSS32_COMPILE to
point to your gcc 32-bit cross compiler.

If you don't have a 32-bit gcc you can either skip building a zImage
(e.g. use yaboot to boot the vmlinux directly), or you can build your
own 32-bit gcc.  Use the same sources you used to build the 64-bit gcc,
but configure it for powerpc-linux.


** Sent via the linuxppc64-dev mail list. See

More information about the Linuxppc64-dev mailing list