ipxe build failure
commit 237baa1433 which is master as of now.
arch/i386/core/gdbidt.S: Assembler messages:
arch/i386/core/gdbidt.S:102: Error: unbalanced parenthesis in operand 1.
Makefile.housekeeping:936: recipe for target 'bin/gdbidt.o' failed
make: *** [bin/gdbidt.o] Error 1
make: Leaving directory '/a/opt/coreboot/payloads/external/iPXE/ipxe/src'
Makefile:59: recipe for target 'build' failed
make: *** [build] Error 2
payloads/external/Makefile.inc:248: recipe for target 'payloads/external/iPXE/ipxe/ipxe.rom' failed
make: *** [payloads/external/iPXE/ipxe/ipxe.rom] Error 2
My system is trisquel 8 (based on ubuntu 16.04), I'm following the general build instructions.
I git cloned ipxe and built master outside of coreboot, so this may not be an ipxe bug. Build fails the same way whether I select stable or master for ipxe build.
#1 Updated by HCL technologies 3 months ago
Yes, git cloning ipxe from outside of coreboot worked as it is getting the assembler from your host system and which would be using binutils version other than 2.32 (you can check your assembler version using 'as --version'). Coreboot currently uses binutils 2.32(latest as of now), and gives error(owing to some changes in the assembler associated to version 2.32) in the process of building ipxe using the ./util/crossgcc/xgcc/i386-elf/bin/as according to the target architecture provided in the .config file above.
Check this patch https://review.coreboot.org/c/coreboot/+/35098 , applying the same and re-building the crossgcc is enough to build ipxe without failure(I have tested already with the Seabios and Uboot using .config provided above).
Please take appropriate action with the Status of the issue once tested at your end.