your broken glibc/atexit problem solution!!!!
Tim Wunder
tim
Mon May 17 11:37:59 PDT 2004
Interesting... maybe this will help me...
On Saturday 21 September 2002 12:46 am, Greg Schafer wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi
>
> Ok, I have reinstated mention of this on my tweaks page. Hopefully this
> might assist in stopping many people from building systems with broken
> glibc's.
>
> To reiterate the problem:-
>
> * if your Ch 5 gcc build says "checking assembler hidden support... no"
> then your glibc is broken. (the glibc function __cxa_atexit will not
> work properly - run glibc's make check and watch tstcxaatexit fail)
>
Hmmm... I try 'make check' in the glibc-build directory and get:
make[2]: Entering directory `/usr/src/glibc-2.2.5/csu'
make[2]: *** No rule to make target
`/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/include/stddef.h', needed by
`/usr/src/glibc-build/bits/stdio_lim.st'. Stop.
> * if the binutils version on your *host* system is 2.12.1 or greater
> then you should be ok - "checking assembler hidden support... yes"
>
my binutils version:
2.10.1
Perhaps that's the answer, update binutils...(cool more tail chasing instead
of a re-install)
> * using the HAVE_GAS_HIDDEN thing even if it does say "yes" is completely
> harmless (we end up with HAVE_GAS_HIDDEN defined twice - big deal!)
>
> * now that we are passing --enable-__cxa_atexit for gcc, it is vitally
> important that our __cxa_atexit function in glibc actually works.
>
> * if anyone has built a broken glibc then you can possibly get away with
> just rebuilding glibc with the dynamic gcc again in Ch 6
>
> * I still maintain that the LFS build method is potentially flawed. The
> *only* thing we build with our static Ch 5 gcc is glibc, the most
> important lib on the system! The only proper solution in my mind is to
> build glibc twice in Chapter 6 - at the start and at the end.
>
> Greg
>
> and further:
> > Is the option --enable-__cxa_atexit for gcc in chapter 5 & 6 ok ?
> > or should I pass this option only in chapter 6 ?
>
> It only affects C++. We don't build a C++ compiler in Ch 5 therefore
> there is no need to supply the switch in Ch 5.
>
> > should I append "#define HAVE_GAS_HIDDEN 1" to
> > gcc-build/gcc/auto-host.h in chapter 5 ?
>
> Yes, only in Ch 5. No need in Ch 6.
>
> so, go read the LFS book about installing gcc and glibc and make use of
> these notes.
Unfortunately, I think this is different from my problem. I still think my
problem is more akin to
http://ricardo.ecn.wfu.edu/glib-linux-archive/0110/0007.html, which seems to
indicate an update of gcc will fix things. Unfortunately, I can't get gcc 3x
to compile.
So my fix is *still* a reinstall.
Regards,
Tim
--
Caldera eWorkstation 3.1+, kernel 2.4.18-preempt, KDE 3.0.3, Xfree86 4.1.0
8:00am up 1 day, 8:46, 2 users, load average: 0.00, 0.00, 0.00
It's what you learn AFTER you know it all that counts
More information about the Linux-users
mailing list