EFI development tools

Nathan Whitehorn nwhitehorn at freebsd.org
Mon Jun 18 18:42:38 UTC 2012


On 06/17/12 19:43, Mike Meyer wrote:
> Eric McCorkle<eric at shadowsun.net>  wrote:
>
>> The -m32  flag seems to be the culprit; removing it fixes the problem.
>>
>> This is why I was having problems, as the offsets in EFI_SYSTEM_TABLE
>> were wrong.
>>
>> In any case, this is a pretty serious error, and someone should try to
>> reproduce it and take a look at it.
> This is a known issue, and had been around for a long time. You can't reliably build 32 bit binaries (what the -m32 flag specifies) on a 64 bit system.  The header files (and possibly other things) are wrong.
>
> Doesn't look like anyone has opened a PR for it.
>

This isn't as complicated as you make it seem. buildworld already does 
it to build the things in lib32 and on some platforms (mips and powerpc) 
the headers are the same for both 32- and 64-bit systems and so -m32 
works perfectly already. All that is needed on x86 is some further 
header unification, which seems to be in progress. Moreover, if you are 
building standalone binaries (which the EFI stuff probably is) it should 
just work now, since standalone code doesn't depend on system headers.
-Nathan


More information about the freebsd-hackers mailing list