linux-l: Warnung vor RedHat 7.0

Jan-Benedict Glaw jbglaw at lug-owl.de
Mo Okt 2 10:36:30 CEST 2000


On Mon, Oct 02, 2000 at 10:04:22AM +0200, Jens Dreger wrote:
> On Sun, Oct 01, 2000 at 05:28:26PM +0200, Guido Seifert wrote:
> Das _ist_ vor der Pressung aufgefallen und deshalb gibt es den
> (Trommelwirbel):
> 
>   *** kernel gcc = kgcc ***
> 
> --------------8<---------------------
> [root at w3 /]# rpm -qi kgcc
> [...]
> Description :
> The kgcc package contains the GNU C Compiler. It is based on egcs
> 1.1.2. You'll need this package in order to compile the Linux kernel.
> -------------8<--------------------

Na suppbbaahhh;(( *grusel*

> Damit der dann auch automatisch benutzt wird, hat man im Makefile
> beim mitgelieferten kernel-source die Zeile
> 
>   CC      =$(CROSS_COMPILE)gcc -D__KERNEL__ -I$(HPATH)
> 
> durch
> 
>   CC      :=$(shell if which $(CROSS_COMPILE)kgcc > /dev/null 2>&1; 
> 	    then echo $(CROSS_COMPILE)kgcc; else echo $(CROSS_COMPILE)
> 	    gcc; fi) -D__KERNEL__ -I$(HPATH)

.oO( Wo ist der Eimer? Mir wird gerad' schlecht!? )

> Das steht natuerlich bei einem originalen kernel-source nicht so drin,
> woraufhin gcc benutzt wird, und der ist zu neu. Fragt sich, warum die
> Leute bei Redhat nicht make so gepatched haben, dass die Zeile
> automatisch ins Makefile eingefuegt wird, wenn make zu erkennen
> glaubt, dass es sich um eine Kernel-Kompilation handelt. Wenn schon,
> denn schon ;-)
> 
> Also: aendere die CC= Zeile im Makefile und alles wird gut.

Doll. Gaans doll...

> Ich stimme voll und ganz mit Dir ueberein, dass das die zweitbeste
> Idee war. Es kommt naemlich noch hinzu, dass sie
> /usr/include/{asm,linux} jetzt nicht mehr als links nach
> /usr/src/linux/include/{asm,linux} angelegt haben, sondern die
> includes direkt nach /usr/include kopiert haben. Schnappsidee, wuerde
> ich sagen. Wenn Du also 2.2.17 kompilierst, musst Du vorher die links
> wieder herstellen, sonst arbeitest Du fortan mit den falschen
> kernel-headern.

Falsch. Das ist ein alter Streit, aber Linus hat den endgültig
geklärt: *userspace* baut man gegen header files, die die libc
mitbringen (also solche, die *direkt* unter /usr/include/{asm,linux,scsi}
liegen. ...und diese bleiben da, bis die libc neue header files mitbringt.
Und der *kernel* wird gegen die include files des *kernels* gebaut.
So hat Linus entschieden. Das ist Fakt[1].

> Das alles fuehrt dann nur dazu, dass sich rumspricht, dass man mit
> Redhat keinen eigenen kernel kompilieren kann...

Kann man so ja auch nicht[2] ;-)

MfG, JBG
[1]	...was aber nichts daran ändert, daß ich die Links auch händisch
	eingebaut habe, weil das für *mich* Vorteile bringt, auch,
	wenn ich damit userspace und kernelspace durcheinanderwürfeln
	kann, ohne das zu beabsichtigen.
[2]	apt-get install gcc und unter Debian rollt der Kernel;)

-- 
Fehler eingestehen, Größe zeigen: Nehmt die Rechtschreibreform zurück!!!
/* Jan-Benedict Glaw <jbglaw at lug-owl.de> -- +49-177-5601720 */
keyID=0x8399E1BB fingerprint=250D 3BCF 7127 0D8C A444 A961 1DBD 5E75 8399 E1BB
     "insmod vi.o and there we go..." (Alexander Viro on linux-kernel)
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : nicht verfügbar
Dateityp    : application/pgp-signature
Dateigröße  : 240 bytes
Beschreibung: nicht verfügbar
URL         : <https://mlists.in-berlin.de/pipermail/linux-l-mlists.in-berlin.de/attachments/20001002/5bb989da/attachment.sig>


Mehr Informationen über die Mailingliste linux-l