fedeliallalinea Administrator


Joined: 08 Mar 2003 Posts: 31525 Location: here
|
Posted: Sun Oct 17, 2004 12:31 pm Post subject: CK11: Il kernel non e' stato compilato con le mie CFLAGS |
|
|
Navigazione: [ back CK10: Compilazione kernel per principianti ] [ Compilazione Kernel ] [ Indice ]
Perchè il kernel non è stato compilato con le CFLAGS che ho messo nel /etc/make.conf?
Il Kernel Linux è il centro del sistema operativo LInux, e per questo è indipendente da ogni distribuzione. Per poter compilare in maniera pulita e facile atraverso molti sistemi diversi il kenel linux include i parametri di compilazione, unici, definiti nel suo makefile. Le USE e CFLAGS di gentoo non sono usati perchè il kernel ha molti parametri di compilazione unici, molti più di quasi tutte le altre applicazioni.
Detto questo, se vuoi ancora compilare il kernel con uno specifico set di CFLAGS, ci sono un po' di modi per farlo.
Primo, puoi definire la variabile d'ambiente CFLAGS_KERNEL prima di compilare il kernel. Ci sono diversi modi di definire variabili d'ambiente a seconda della tua shell, ma un modo è questo:
Code: | export CFLAGS_KERNEL="-Wall -Wstrict-prototypes -march=pentium3 -O3 -mmmx -msse -fomit-frame-pointer -falign-functions=4" |
Secondo, puoi editare il Makefile nella cartella sorgente del kernel, cambiando le linee HOSTCFLAGS e CFLAGS con le tue impostazioni.
Per esempio, dal mio Makefile modificato in /usr/src/linux dai vanilla-sources-2.4.19 sul mio pentium3:
Code: | (line 20)
HOSTCFLAGS = -Wall -Wstrict-prototypes -march=pentium3 -O3 -mmmx -msse -fomit-frame-pointer -falign-functions=4
(line 91)
CFLAGS := $(CPPFLAGS) -Wall -Wstrict-prototypes -Wno-trigraphs -O3 -fno-strict-aliasing -fno-common -mmmx -msse -falign-functions=4 |
In fine, le ultime (al tempo, ndt) gentoo-sources includono un opzione "gcc 3+" nelle opzioni di configurazione del processore. Questo permette qualche personalizzazione, in quanto permette al kernel di settare l'opzione "-march" durante la compilazione del kernel.
Come nota finale, non dovresti essere troppo aggressivo, perchè il kernel deve essere stabile se vuoi essere in grado di usare il tuo sistema.
Autore: int1 (testo originale)
Traduttore: =DvD= _________________ Questions are guaranteed in life; Answers aren't. |
|