This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH] missing #ifndef inhibit_libc in gcc/config/rs6000/linux.h
Daniel Jacobowitz wrote:
Sadly, in order to build a proper Linux toolchain, inhibit_libc
is absolutely required, even on Linux. This is because you have
to first build a bootstrap compiler without glibc.
This is a lie.
? The sequence required to build a Linux toolchain without
the build system's headers and libraries leaking in is
glibc: make install-headers (using native compiler)
gcc: make all-gcc install-gcc (with inhibit_libc defined, perhaps indirectly)
glibc: make install
gcc: make install
>>The glibc "make install-headers" works without
a target compiler.
Right; I never said it didn't.
The trick that you may be missing, Dan, is that you need to have a
_sufficiently recent_ compiler on the host; or else you need to patch
glibc's configure script. You can't do it without any compiler because
of some stupid autoconf CPP sanity check, and because it explicitly
checks the versions, but a native gcc 3.3.1 works perfectly fine.
I think you also need a recent compiler because of one of the -M
options used in generating stdio_lim.h.dT.
I'm aware that recent gcc's require gcc-3.2 or later to compile,
is that what you're talking about?
Maybe the problem is I didn't look at the patch Gernot posted,
and was just responding to the "inhibit_libc is a hack" statement.