[syslinux] EFI build problems

Ferenc Wagner wferi at niif.hu
Wed Jan 8 04:59:42 PST 2014


Matt Fleming <matt at console-pimps.org> writes:

> On Thu, 19 Dec, at 02:39:23AM, Celelibi wrote:
> 
>> I confirm the command realpath wasn't installed by default on my
>> debian either. And it seems it can be easily replaced by readlink -f.
>> And actually I find its use doubtful.
>> 
>> However, as you may have seen, these scripts are quite new and may
>> have bugs. Using pushd/popd in a /bin/sh script is a bug. IIRC, by
>> default, on debian, /bin/sh points to dash, and not bash.
>  
> D'oh, yes. That's a bug. The intent was to allow building the gnu-efi
> code without the Syslinux source being the current working directory -
> hence the realpath stuff. Furthermore, the gnu-efi Makefiles prepend a
> '/' to the install paths, so you have to pass absolute paths.

Actually, they support INSTALLROOT.  Why don't you override that on the
command line?

> Can you try building the head of the firmware branch?

I tried, but:

[...]
make[3]: Leaving directory `/home/wferi/syslinux/syslinux-clean/efi32/sample'
make -r -C efi SRC="/home/wferi/syslinux/syslinux-clean/efi" OBJ="/home/wferi/syslinux/syslinux-clean/efi32/efi" \
		-f /home/wferi/syslinux/syslinux-clean/efi/Makefile all
remote: Counting objects: 315, done.
remote: Compressing objects: 100% (270/270), done.
remote: Total 315 (delta 130), reused 112 (delta 18)
Receiving objects: 100% (315/315), 192.99 KiB | 30 KiB/s, done.
Resolving deltas: 100% (130/130), done.
/usr/bin/ar: creating libefi.a
dpath.c: In function ‘_DevPathIPv4’:
dpath.c:678:27: warning: variable ‘IP’ set but not used [-Wunused-but-set-variable]
dpath.c: In function ‘_DevPathIPv6’:
dpath.c:690:27: warning: variable ‘IP’ set but not used [-Wunused-but-set-variable]
dpath.c: In function ‘_DevPathInfiniBand’:
dpath.c:702:30: warning: variable ‘InfiniBand’ set but not used [-Wunused-but-set-variable]
event.c: In function ‘LibCreateProtocolNotifyEvent’:
event.c:30:29: warning: variable ‘Status’ set but not used [-Wunused-but-set-variable]
hand.c: In function ‘LibLocateHandleByDiskSignature’:
hand.c:120:28: warning: variable ‘Start’ set but not used [-Wunused-but-set-variable]
hw.c: In function ‘ReadPort’:
hw.c:79:17: warning: variable ‘Status’ set but not used [-Wunused-but-set-variable]
hw.c: In function ‘WritePort’:
hw.c:94:17: warning: variable ‘Status’ set but not used [-Wunused-but-set-variable]
hw.c: In function ‘ReadPciConfig’:
hw.c:109:17: warning: variable ‘Status’ set but not used [-Wunused-but-set-variable]
hw.c: In function ‘WritePciConfig’:
hw.c:124:17: warning: variable ‘Status’ set but not used [-Wunused-but-set-variable]
In file included from /usr/include/elf.h:24:0,
                 from reloc_ia32.c:39:
/usr/include/features.h:323:26: fatal error: bits/predefs.h: No such file or directory
compilation terminated.
make[4]: *** [reloc_ia32.o] Error 1
make[3]: *** [gnuefi] Error 2
make[3]: Entering directory `/home/wferi/syslinux/syslinux-clean/efi32/efi'
/home/wferi/syslinux/syslinux-clean/mk/efi.mk:26: *** Failed to build gnu-efi for ia32.  Stop.
make[3]: Leaving directory `/home/wferi/syslinux/syslinux-clean/efi32/efi'
make[2]: *** [efi] Error 2
make[2]: Leaving directory `/home/wferi/syslinux/syslinux-clean/efi32'
make[1]: *** [efi32] Error 2
make[1]: Leaving directory `/home/wferi/syslinux/syslinux-clean'
make: *** [all] Error 2
-- 
Thanks,
Feri.



More information about the Syslinux mailing list