Date: Mon, 18 Jun 2012 13:42:27 -0500 From: Nathan Whitehorn <nwhitehorn@freebsd.org> To: Mike Meyer <mwm@mired.org> Cc: freebsd-hackers@freebsd.org, Eric McCorkle <eric@shadowsun.net> Subject: Re: EFI development tools Message-ID: <4FDF7693.6010506@freebsd.org> In-Reply-To: <2d9e0a80-658b-438f-90f0-1f510fb1cdd8@email.android.com> References: <4FDBBACF.9040809@shadowsun.net> <4FDE5E19.5050705@shadowsun.net> <2d9e0a80-658b-438f-90f0-1f510fb1cdd8@email.android.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 06/17/12 19:43, Mike Meyer wrote: > Eric McCorkle<eric@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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4FDF7693.6010506>