The glibc component of the i686 cross-compiler on SPARC fails with a configure: error: gcc must provide the <cpuid.h> header Reproducible: Always
Created attachment 253735 [details] emerge --info =cross-i686-pc-linux-gnu/glibc-2.11.2-r3
Created attachment 253737 [details] emerge -pqv =cross-i686-pc-linux-gnu/glibc-2.11.2-r3
Created attachment 253739 [details] /var/tmp/cross/i686-pc-linux-gnu/portage/cross-i686-pc-linux-gnu/glibc-2.11.2-r3/temp/build .log
Created attachment 253741 [details] /var/tmp/cross/i686-pc-linux-gnu/portage/cross-i686-pc-linux-gnu/glibc-2.11.2-r3/temp/ environment
There is a workaround for this; simply put cpuid.h in /usr/include and glibc manages to build, but I do not trust this as I've had failures building software using distcc. This needs fixing.
Additionally, the same problem occurs with i586.
should be set now http://sources.gentoo.org/sys-libs/glibc/files/eblits/src_compile.eblit?r1=1.15&r2=1.16
Unfortunately, I'm still getting the same error, even though I've updated portage. Did the fix make its way into Portage?
I take that one back, that fix is definitely there but i686 glibc still fails to build on SPARC.
glibc headers install fine for me on sparc with an i686 target
I'm now stumped. There must be a difference between the SPARC you tested on and mine, as mine still fails to build an i686 cross-compiler. Is yours a multilib one?
you havent actually stated your problem. are you still seeing the cpuid.h failure ? or is it something new ?
Sorry, my fault, yes I am still seeing the cpuid.h failure - it stops when it cannot find it.
and you're talking about the headers-only case of glibc right ? my build shows what it should: ... checking for cpuid.h... (cached) yes ... you can look into the config.log to make sure the env var is being propagated.
This is what I am still getting: checking for unistd.h... (cached) yes checking cpuid.h usability... no checking cpuid.h presence... no checking for cpuid.h... no configure: error: gcc must provide the <cpuid.h> header * ERROR: cross-i686-pc-linux-gnu/glibc-2.11.2-r3 failed: * failed to configure glibc * * Call stack: * ebuild.sh, line 54: Called src_compile * environment, line 3826: Called eblit-run 'src_compile' * environment, line 1233: Called eblit-glibc-src_compile * src_compile-2.11.2.eblit, line 181: Called toolchain-glibc_headers_compile * src_compile-2.11.2.eblit, line 170: Called die * The specific snippet of code: * CC=gcc \ * CFLAGS="-O1 -pipe" \ * "${S}"/configure ${myconf} || die "failed to configure glibc" * I've attached the config.log
Created attachment 255399 [details] config.log
it's because you're using stable versions http://sources.gentoo.org/sys-libs/glibc/files/eblits/src_compile-2.11.2.eblit?r1=1.1&r2=1.2
Yep, thank you, that has fixed that problem. Now emerging i686 toolchain!