It appears that we have a build dependency on 32-bit headers which
isn''t checked during ./configure, leading to strange-looking error:
---- snip ----
make -C tcgbios all
make[10]: Entering directory
`/home/xenuser/hg/xen-unstable.hg/tools/firmware/rombios/32bit/tcgbios''
gcc -O1 -fno-omit-frame-pointer -m32 -march=i686 -g
-fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes
-Wdeclaration-after-statement -Wno-unused-but-set-variable
-D__XEN_TOOLS__ -MMD -MF .tcgbios.o.d -D_LARGEFILE_SOURCE
-D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls
-mno-tls-direct-seg-refs -Werror -fno-stack-protector -fno-exceptions
-fno-builtin -msoft-float
-I/home/xenuser/hg/xen-unstable.hg/tools/firmware/rombios/32bit/tcgbios/../../../../../tools/include
-I.. -I../.. -c -o tcgbios.o tcgbios.c
In file included from /usr/include/stdint.h:26:0,
from /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdint.h:3,
from ../../../hvmloader/acpi/acpi2_0.h:21,
from ../util.h:4,
from tcgbios.c:27:
/usr/include/features.h:324:26: fatal error: bits/predefs.h: No
such file or directory
compilation terminated.
gcc -O1 -fno-omit-frame-pointer -m32 -march=i686 -g
-fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes
-Wdeclaration-after-statement -Wno-unused-but-set-variable
-D__XEN_TOOLS__ -MMD -MF .tpm_drivers.o.d -D_LARGEFILE_SOURCE
-D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls
-mno-tls-direct-seg-refs -Werror -fno-stack-protector -fno-exceptions
-fno-builtin -msoft-float
-I/home/xenuser/hg/xen-unstable.hg/tools/firmware/rombios/32bit/tcgbios/../../../../../tools/include
-I.. -I../.. -c -o tpm_drivers.o tpm_drivers.c
In file included from /usr/include/stdint.h:26:0,
from /usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdint.h:3,
from ../../../hvmloader/acpi/acpi2_0.h:21,
from ../util.h:4,
from tpm_drivers.c:25:
/usr/include/features.h:324:26: fatal error: bits/predefs.h: No
such file or directory
compilation terminated.
---- snip ----
Doing the following solved the problem (and Google was very helpful):
sudo apt-get install libc6-dev-i386
But it would be nice if the error message happen earlier and be a bit
more friendly.
-George