beldon on Tue, 10 Apr 2001 15:28:25 -0400

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: [PLUG] Kernel 2.4 under RH7

> ------------ Original Message -----------
> From: Michael Leone <>
> Date: Tue, 10 Apr 2001 15:01:50 -0400
> > Just download any tarball from a kernel mirror (or use Darxus' dlkern
> utility).  Once you un-tar it, you need to edit the "Makefile" so that
> wherever it says "gcc" change it to "kgcc".  This is a RedHat-only thing
> since RH decided to ship with an unstable version of gcc.
> Does that apply even AFTER you've gotten all the revelent RH 7
> patches/bug/security fixes, Tony? By which I mean... if you keep up with
> the
> RH7 patches, do you get a "stable" and usable gcc, and therefore don't
> always have to use kgcc to kernel compile with?
> If you know, that is.

The latest patch for gcc on RH7 is 2.96.  The latest stable version of gcc is 2.95.3.  While RedHat's 2.96 fix is supposed to be more stable, I have had trouble compiling kernels with it.  kgcc is simply a renamed, stable gcc.  Red Hat knew that shipping an unstable gcc was for shit as far as compiling kernels, so all source rpms for RH kernels direct the makefile to kgcc.

The following is quoted from the Linux kernel mailing list: 

"Subject: Re: Signal 11
Date: 14 Dec 2000 11:11:28 -0800
From: (Linus Torvalds)

Quite frankly, anybody who uses RedHat 7.0 and their broken compiler
 for _anything_ is going to have trouble.

I don't know why RH decided to do their idiotic gcc-2.96 release (it
certainly wasn't approved by any technical gcc people - the gcc
 people were upset about it too), and I find it even more surprising
 that they apparently KNEW that the compiler they were using was
 completely broken. They included another (non-broken) compiler, and
 called it "kgcc".

"kgcc" stands for "kernel gcc", apparently because (a) they realised
that a miscompiled kernel is even worse than miscompiling some random
user applications and (b) gcc-2.96 is so broken that it requires
 special libraries for C++ vtable chunks handling that is different,
 so the _working_ gcc can only be used with programs that do not need
 such library support.  Namely the kernel.

In case it wasn't obvious yet, I consider RedHat-7.0 to be basically
unusable as a development platform, and I hope RH downgrades their
compiler to something that works better RSN.  It apparently has
 problems compiling stuff like the CVS snapshots of X etc too (and
 obviously, anything you compile under gcc-2.96 is not likely to work
 anywhere else except with the broken libraries)."

Philadelphia Linux Users Group       -
General Discussion  -