On Sat, 4 Jun 2011 14:55:21 -0600
Matthew Burgess wrote:
> Hi all,
>
> The following is taken from my build logs when using Glibc-2.13:
>
> checking cpuid.h usability... no
> checking cpuid.h presence... yes
> configure: WARNING: cpuid.h: present but cannot be compiled
> configure: WARNING: cpuid.h: check for missing prerequisite headers?
> configure: WARNING: cpuid.h: see the Autoconf documentation
> configure: WARNING: cpuid.h: section "Present But Cannot Be Compiled"
> configure: WARNING: cpuid.h: proceeding with the preprocessor's result
> configure: WARNING: cpuid.h: in the future, the compiler will take precedence
> checking for cpuid.h... yes
>
> Using Glibc-2.14, that final line reads 'no', and appears to stem from the
> lack of 'stdio.h'. stdio.h is installed by Glibc, so it would appear as if
> we're getting into a circular dependency here somehow, but I'm yet to figure
> out how/why Glibc-2.14 is behaving so differently to Glibc-2.13.
>
> I guess the first question is, has anyone else seen this issue?
No, I don't get that. It could be because I've been using eglibc for a
while. It could also be an architecture thing; I'm using x86_64, are
you using i686? When I configure glibc-2.14 I get:
checking cpuid.h usability... yes
checking cpuid.h presence... yes
checking for cpuid.h... yes
However, when I try to compile it the build fails like so:
make[2]: Leaving directory `/mnt/lfs/sources/glibc-2.14/elf'
gcc -shared -static-libgcc -Wl,-O1 -Wl,-z,defs
-Wl,-dynamic-linker=/tools/lib/ld-linux-x86-64.so.2
-B/mnt/lfs/sources/glibc-build/csu/
-Wl,--version-script=/mnt/lfs/sources/glibc-build/libc.map
-Wl,-soname=libc.so.6 -Wl,-z,combreloc -Wl,-z,relro -Wl,--hash-style=both
-nostdlib -nostartfiles -e __libc_main -L/mnt/lfs/sources/glibc-build
-L/mnt/lfs/sources/glibc-build/math -L/mnt/lfs/sources/glibc-build/elf
-L/mnt/lfs/sources/glibc-build/dlfcn -L/mnt/lfs/sources/glibc-build/nss
-L/mnt/lfs/sources/glibc-build/nis -L/mnt/lfs/sources/glibc-build/rt
-L/mnt/lfs/sources/glibc-build/resolv -L/mnt/lfs/sources/glibc-build/crypt
-L/mnt/lfs/sources/glibc-build/nptl
-Wl,-rpath-link=/mnt/lfs/sources/glibc-build:/mnt/lfs/sources/glibc-build/math:/mnt/lfs/sources/glibc-build/elf:/mnt/lfs/sources/glibc-build/dlfcn:/mnt/lfs/sources/glibc-build/nss:/mnt/lfs/sources/glibc-build/nis:/mnt/lfs/sources/glibc-build/rt:/mnt/lfs/sources/glibc-build/resolv:/mnt/lfs/sources/glibc-build/crypt:/mnt/lfs
/sources/glibc-build/nptl -o /mnt/lfs/sources/glibc-build/linkobj/libc.so -T
/mnt/lfs/sources/glibc-build/shlib.lds
/mnt/lfs/sources/glibc-build/csu/abi-note.o
/mnt/lfs/sources/glibc-build/elf/soinit.os -Wl,--whole-archive
/mnt/lfs/sources/glibc-build/linkobj/libc_pic.a -Wl,--no-whole-archive
/mnt/lfs/sources/glibc-build/elf/sofini.os
/mnt/lfs/sources/glibc-build/elf/interp.os
/mnt/lfs/sources/glibc-build/elf/ld.so -lgcc
/usr/bin/ld: BFD (GNU Binutils) 2.21 internal error, aborting at
../../binutils-2.21/bfd/elf64-x86-64.c line 2764 in
elf64_x86_64_relocate_section
/usr/bin/ld: Please report this bug.
collect2: ld returned 1 exit status
make[1]: *** [/mnt/lfs/sources/glibc-build/linkobj/libc.so] Error 1
make[1]: Leaving directory `/mnt/lfs/sources/glibc-2.14'
make: *** [all] Error 2
andy:/mnt/lfs/sources/glibc-build$
Apparently this is a bug in binutils' ld that is fixed in
binutils-2.21.51.
http://sourceware.org/bugzilla/show_bug.cgi?id=12366
I have tested binutils-2.21.51 and glibc-2.14 compiles fine with it.
Current firefox from mercurial also compiles with binutils-2.21.51.
With binutils-2.21 current firefox fails to build in a similar way to
glibc-2.14. I have built my current system with binutils-2.21.51 it
seems to work fine and solves those 2 compile failures for me.
Andy
--
http://linuxfromscratch.org/mailman/listinfo/lfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page