gnu-efi icon indicating copy to clipboard operation
gnu-efi copied to clipboard

Cross compile errors (see below please)

Open ghost opened this issue 2 years ago • 3 comments

Screenshot from 2023-04-12 18-03-16 So upon trying to cross compile the sources there appears to be some sort of issue here with missing functions. Unless I'm not doing something correctly this kind of sucks because I refuse to learn the Intel/AMD platforms just to get a working EFI bootloader made

ghost avatar Apr 13 '23 01:04 ghost

Yep. Having the same errors for v7a arm cross-builds here with .17 iirc I don't think I had these errors when using .15. Probably anecdotal though. Toolchain is a rather modern 12.2.0 with 2.37 glibc, ct-ng based.

milkylainen avatar May 06 '23 07:05 milkylainen

After looking into it I think the compile error is because gnu-efi doesn't carry the needed set of ARM __aeabi* implementations with regard to floating point. It is freestanding after all. Anyway.. print.c uses floats and needs them. So either gnu-efi needs to implement them or you need softfp or hard as -mfloat-abi. A pure soft implementation won't currently do iiuc.

-mfloat-abi=softfp

milkylainen avatar May 06 '23 19:05 milkylainen

Screenshot from 2023-04-12 18-03-16 So upon trying to cross compile the sources there appears to be some sort of issue here with missing functions. Unless I'm not doing something correctly this kind of sucks because I refuse to learn the Intel/AMD platforms just to get a working EFI bootloader made

You need the arm-linux-gnueabihf compiler for this. Using this particular compiler and running a fresh make clean then re-running make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- will resolve this

ghost avatar May 23 '23 18:05 ghost