Re: linux-yocto-rt build fail for sugarbay bsp on grub recipe

Richard Purdie

On Tue, 2011-08-30 at 18:39 -0700, Darren Hart wrote:
I've attached mine and Kishore's. Mine builds grub, while his does not.

I noticed that Kishore's config.log differs from mine in some configure tests. For example:

Mine contains (config.log-dvhart):

configure:8739: checking for __bswapsi2
configure:8739: gcc -o conftest -O2 -pipe -g -feliminate-unused-debug-types -DGRUB_MACHINE_PCBIOS=1 -Wall -W -Wshadow -Wpointer-arith -Wmissing-prototypes -Wundef -Wstrict-prototypes -g -falign-jumps=1 -falign-loops=1 -falign-functions=1 -mno-mmx -mno-sse -mno-sse2 -mno-3dnow -fno-dwarf2-cfi-asm -m32 -fno-stack-protector -mno-stack-arg-probe -Werror -nostdlib -Wl,--defsym,___main=0x8100 -Wl,--defsym,abort=main -Wno-error -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -m32 conftest.c -lgcc >&5
In file included from /usr/include/features.h:387,
from /usr/include/limits.h:27,
from /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include-fixed/limits.h:122,
from /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include-fixed/syslimits.h:7,
from /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include-fixed/limits.h:11,
from conftest.c:62:
/usr/include/gnu/stubs.h:7: fatal error: gnu/stubs-32.h: No such file or directory compilation terminated.
configure:8739: $? = 1

While there is no reference to stubs.h in Kishore's config.log (confi-1.log):

configure:8739: checking for __bswapsi2
configure:8739: gcc -o conftest -O2 -pipe -g -feliminate-unused-debug-types -DGRUB_MACHINE_PCBIOS=1 -Wall -W -Wshadow -Wpointer-arith -Wmissing-prototypes -Wundef -Wstrict-prototypes -g -falign-jumps=1 -falign-loops=1 -falign-functions=1 -mno-mmx -mno-sse -mno-sse2 -mno-3dnow -fno-dwarf2-cfi-asm -m32 -fno-stack-protector -Werror -nostdlib -Wl,--defsym,___main=0x8100 -Wl,--defsym,abort=main -Wno-error -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -m32 conftest.c -lgcc >&5
conftest.c:75: warning: function declaration isn't a prototype
/usr/bin/ld: warning: cannot find entry symbol _start; defaulting to 00000000080480c0
configure:8739: $? = 0
configure:8739: result: yes
This is interesting. What its saying here is that your build system
compiler can't compile 32 bit (the -m32 flag) since there are no 32 bit
headers present. Kishore's must have 32 bit headers installed (or be a
32 bit system). We shouldn't be seeing those differences but what they
amount to I don't know without looking at grub in more detail.

I also found that Kishore's config.log includes:
freetype_libs='-lfreetype -lz'

While mine includes:
freetype_cflags='-I/build/poky/sugarbay/tmp/sysroots/sugarbay/usr/include/freetype2 -I/build/poky/sugarbay/tmp/sysroots/sugarbay/usr/include'
freetype_libs='-L/build/poky/sugarbay/tmp/sysroots/sugarbay/usr/lib -lfreetype'

This would certainly be cause for a QA test failure.
Yes, this is certainly the problem.

Perhaps a DEPENDS=freetype in the grub recipe is in order?

Alternatively, we could see about configuring it without freetype.
I'd tend to favour the latter unless someone can convince me freetype
support adds something really useful to grub.



Join to automatically receive all group messages.