Linked by Thom Holwerda on Tue 26th Oct 2010 20:36 UTC, submitted by tyrione
Linux Clang can build a kernel now. "The kernel can successfully boot to runlevel 5 (aka X + networking) on the Macbook, both on bare metal and in Qemu. The kernel can successfully boot to runlevel 3 on a secondary test machine, a microATX desktop box (Intel Atom). I haven't tried to start X on this box yet. The kernel can self-host; I am currently running a 'fourth generation' self-hosted Linux kernel built by a 'fourth generation' Clang."
Thread beginning with comment 447283
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[2]: Not quite.
by rexstuff on Wed 27th Oct 2010 04:44 UTC in reply to "RE: Not quite."
rexstuff
Member since:
2007-04-06

Fair enough. But 'the late 80's and early 90's' was 20 years ago, now (I know, it's shocking to me too). That is a lot of time to grow beyond meager beginnings.

Furthermore, the Linux kernel prides itself on portability almost as much as NetBSD (which is eclipsed in actual portability by Linux). Given that there are other free C compilers out there (icc, pcc, etc), you would think that Linux would have parted would GCC dependency a long time ago. Compiler dependent code strikes me as just as poor form as architecture dependent code.

Reply Parent Score: 1

RE[3]: Not quite.
by Bill Shooter of Bul on Wed 27th Oct 2010 05:48 in reply to "RE[2]: Not quite."
Bill Shooter of Bul Member since:
2006-07-14

The portability of Linux is pretty much described as thus: "Any system that you can port gcc to ... "

Reply Parent Score: 3

RE[3]: Not quite.
by galvanash on Wed 27th Oct 2010 17:40 in reply to "RE[2]: Not quite."
galvanash Member since:
2006-01-25

It has been stated by a few kernel devs (I think Linus, but I cant find a reference), that while it may be possible, it is extremely difficult to do low level kernel development in C without leaning on some non-standard functionality in the compiler. Meaning that it they wanted to support multiple compilers they would have to conditionalize the living hell out of the headers/build system OR make the other compilers behave the same way as GCC. The later is much easier in the long haul (and is essentially what Clang is trying to do for the most part).

Reply Parent Score: 2