[ipxe-devel] IPXE compilation error with arm64

Michael Brown mcb30 at ipxe.org
Tue Apr 18 09:06:23 UTC 2017


On 18/04/17 09:56, Meenakshi Aggarwal wrote:
> 1. Linaro 'aarch64-linux-gnu-gcc' toolchain. version Linaro gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu
> 2. CROSS_COMPILE=aarch64-linux-gnu-
> 3. ARCH=arm64
>
> cd ipxe/src
> make
>
> Error Log
> ---------
> # make
>   [BUILD] bin/__divdi3.o
> aarch64-linux-gnu-gcc: error: unrecognized command line option '-mpreferred-stack-boundary=2'
> aarch64-linux-gnu-gcc: error: unrecognized command line option '-mregparm=3'
> aarch64-linux-gnu-gcc: error: unrecognized command line option '-mrtd'
> aarch64-linux-gnu-gcc: error: unrecognized command line option '-m32'
> make: *** [bin/__divdi3.o] Error 1

The default "make" will attempt to build the standard i386 BIOS targets, 
which won't work with the arm64 version of gcc.  You need to choose a 
suitable arm64 UEFI target, e.g.

   make bin-arm64-efi/8086100e.efi

Note that the "all-drivers" build (bin-arm64-efi/ipxe.efi) is 
non-functional at present, since we have no arm64 implementation of the 
port I/O primitives (inb()/outb() etc.).

Michael



More information about the ipxe-devel mailing list