gcc 3.4.0 and glibc
In Chapter 5, when compiling glibc 2.3.3 with the just bootstrapped gcc 3.4.0 and linux headers 2.6.5, I get this error:
make -C elf subdir_lib make[2]: Entering directory `/mnt/linux/sources/untarred/glibc-2.3.3-20031202/elf' gcc -B/tools/bin/ dl-runtime.c -c -std=gnu99 -O2 -Wall -Winline -Wstrict-prototypes -Wwrite-strings -g -mpreferred-stack-boundary=2 -fexceptions -fasynchronous-unwind-tables -I../include -I. -I/mnt/linux/sources/untarred/glibc-build/elf -I.. -I../libio -I/mnt/linux/sources/untarred/glibc-build -I../sysdeps/i386/elf -I../linuxthreads/sysdeps/unix/sysv/linux/i386 -I../linuxthreads/sysdeps/unix/sysv/linux -I../linuxthreads/sysdeps/pthread -I../sysdeps/pthread -I../linuxthreads/sysdeps/unix/sysv -I../linuxthreads/sysdeps/unix -I../linuxthreads/sysdeps/i386/i686 -I../linuxthreads/sysdeps/i386 -I../sysdeps/unix/sysv/linux/i386 -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu -I../sysdeps/unix/common -I../sysdeps/unix/mman -I../sysdeps/unix/inet -I../sysdeps/unix/sysv/i386 -I../sysdeps/unix/sysv -I../sysdeps/unix/i386 -I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/i386/i686/fpu -I../sysdeps/i386/i686 -I../sysdeps/i386/i486 -I../sysdeps/i386/fpu -I../sysdeps/i386 -I../sysdeps/wordsize-32 -I../sysdeps/ieee754/ldbl-96 -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754 -I../sysdeps/generic/elf -I../sysdeps/generic -nostdinc -isystem /mnt/linux/tools/bin/../lib/gcc/i686-pc-linux-gnu/3.4.0/include -isystem /tools/include -D_LIBC_REENTRANT -include ../include/libc-symbols.h -o /mnt/linux/sources/untarred/glibc-build/elf/dl-runtime.o -MD -MP -MF /mnt/linux/sources/untarred/glibc-build/elf/dl-runtime.o.dt dl-runtime.c:56: error: conflicting types for 'fixup' ../sysdeps/i386/dl-machine.h:158: error: previous declaration of 'fixup' was here dl-runtime.c:56: error: conflicting types for 'fixup' ../sysdeps/i386/dl-machine.h:158: error: previous declaration of 'fixup' was here dl-runtime.c:141: error: conflicting types for 'profile_fixup' ../sysdeps/i386/dl-machine.h:161: error: previous declaration of 'profile_fixup' was here dl-runtime.c:141: error: conflicting types for 'profile_fixup' ../sysdeps/i386/dl-machine.h:161: error: previous declaration of 'profile_fixup' was here ../sysdeps/i386/dl-machine.h:158: warning: 'fixup' declared `static' but never defined ../sysdeps/i386/dl-machine.h:161: warning: 'profile_fixup' declared `static' but never defined make[2]: *** [/mnt/linux/sources/untarred/glibc-build/elf/dl-runtime.o] Error 1 make[2]: Leaving directory `/mnt/linux/sources/untarred/glibc-2.3.3-20031202/elf' make[1]: *** [elf/subdir_lib] Error 2 make[1]: Leaving directory `/mnt/linux/sources/untarred/glibc-2.3.3-20031202' make: *** [all] Error 2 I have no overriding environment variables like CFLAGS and CXXFLAGS set. How do I solve this error? |
Try this...
Code:
diff -u -r1.124 -r1.125 |
Note you may also need to use the -fno-unit-at-a-time compiler flag. I did.
Code:
make CFLAGS+="-fno-unit-at-a-time" |
Ok, I solved the problem by using a more recent version of glibc (2.3.4)
|
Hey, exactly where did you get Glibc 2.3.4. I'm looking all over for this and can't seem to find it.
|
I am assuming you got it from the glbic CVS on sources.redhat.com. I haven't used CVS very much unfortunately. The version.h file says the current version is 2.3.3, yet looking at the Versions.def file there is a marker for 2.3.4. How can I get a list of tags in the libc module, or find out what date was the official 2.3.4 code?
|
This is the "all the packages" page for Bleeding Edge Linux From Scratch. Scroll to the bottom of the page and read note 2
|
Thanks, I didn't know there was a BE-LFS project. If I'm right, I think the page you were reffering to is this:
http://belfs.linux-phreak.net/chapter03/packages.html |
Yes, sorry, I didn't realize I'd forgotten to post the link. How stupid of me. My apologies.
|
All times are GMT -5. The time now is 12:42 PM. |