[syslinux] 6.04-pre2, gnu-efi 3.0.8+, libgpl.c32 bug report. WAS: syslinux-6.04-pre2
ady-sf at hotmail.com
Thu Feb 7 08:51:33 PST 2019
> > > Should be a trivial fix by simply omitting those from the
> > > syslinux-provided library functions on EFI.
> > >
> > > -hpa
> > >
> > All this has been already done in Debian Testing a couple of months ago
> > (at least). The next step for Debian in this regard should probably be
> > to test with gnu-efi 3.0.9 or newer, because the latter includes
> > relevant patches already.
> Ahh, that would be great if these could be applied too.
>From Debian's git repo:
These are relevant patches already used in Debian:
Description: Fix compatibility with new gnu-efi version
* The VPrint definition is now part of the exports of gnu-efi
* The EFI_PXE_BASE_CODE struct has been renamed to
* Update the longjump calls to fit the new declaration
* Allow multiple definitions when linking the syslinux binary so the
memset and memcpy symbols which are included by gnu-efi since 3.0.8
ignored (we still use the definitions from syslinux) but linking
The reason for that last one is:
* gnu-efi compatibility patch: use memset and memcpy from syslinux
of from gnu-efi
- Using the memset and memcpy from gnu-efi causes some modules
vesamenu.c32) to fail with "Undef symbol FAIL: memset"
And, once again, upstream git master head of gnu-efi has relevant
patches _after_ 3.0.8. Whether they actually solved the memset and
memcpy issues for Syslinux, that's for some capable developer to
git clone git://git.code.sf.net/p/gnu-efi/code gnu-efi-code
git clone https://git.code.sf.net/p/gnu-efi/code gnu-efi-code
Additional relevant patches included in Debian:
* Strip .note.gnu.property section from mbr.bin (added since
binutils >= 2.31.1-2) to stay within size constraints (Closes:
* Fix broken efi binaries when building with binutils >= 2.31 by
the linker script.
In addition, syslinux 6.04-pre2 and Debian's package, both fail, for
example with hdt.c32:
Undef symbol FAIL: exp
Failed to load libgpl.c32
Failed to load COM32 file hdt.c32
_ "syslinux-common: Undef symbol FAIL: exp in libgpl.c32 when trying to
_ [syslinux] [PATCH 1/2] Add fabs() implementation
_ [syslinux] [PATCH 2/2] Add -ffreestanding to compiler flags
So, bintutils 2.31+, gcc 8+.
I sincerely don't know how many times a bug has to be reported, or a
to be sent, in order to be actually noticed. Hopefully this time...
More information about the Syslinux