Newsgroup: it.comp.os.linux.development
Titolo: Kernel: compilazione

Salve,
ho un problema di compilazione del kernel...
come distribuzione sto usando la mandrake 9.0 e premetto subito che la
ricompilazion del kernel "in dotazione" funziona.
Il problema e' che ho bisogno di usare il kernel 2.4.2 poiche' la mia scheda
ADSL PCI (atlantis I-Storm) necessita di tale kernel al quale va poi
applicata una patch.
Anche senza applicare la patch incorro nei seguenti problemi di compilazione
di suddetto kernel (ma li ho anche con la 2.4.0):
- in fase di "make dep" ottengo i seguenti warning, che si ripropongono
anche in fase "make bzImage":
In file included from /usr/src/linux/include/linux/string.h:21,
    from /usr/src/linux/include/linux/fs.h:23,
    from /usr/src/linux/include/linux/capability.h:17,
    from /usr/src/linux/include/linux/binfmts.h:5,
    from /usr/src/linux/include/linux/sched.h:9,
    from /usr/src/linux/include/linux/mm.h:4,
    from timer.c:19:
/usr/src/linux/include/asm/string.h:552:17: warning: multi-line string
literals are deprecated
In file included from /usr/src/linux/include/asm/semaphore.h:39,
    from /usr/src/linux/include/linux/fs.h:199,
    from /usr/src/linux/include/linux/capability.h:17,
    from /usr/src/linux/include/linux/binfmts.h:5,
    from /usr/src/linux/include/linux/sched.h:9,
    from /usr/src/linux/include/linux/mm.h:4,
    from timer.c:19:
/usr/src/linux/include/asm/system.h:148:9: warning: multi-line string
literals are deprecated
- i problemi piu' grossi arrivano in fase "make bzImage" dove la
compilazione, oltre ai warning sopracitati, non va a buon fine:
timer.c:35: conflicting types for `xtime'
/usr/src/linux/include/linux/sched.h:537: previous declaration of `xtime'
make[2]: *** [timer.o] Error 1
make[2]: Leaving directory `/usr/src/linux-2.4.2/kernel'
make[1]: *** [first_rule] Error 2
make[1]: Leaving directory `/usr/src/linux-2.4.2/kernel'
make: *** [_dir_kernel] Error 2
in effetti il problema con xtime e' che da una parte e' dichiarata
"volatile" e dall'altra no... cosi' ho tolto il volatile e ho proseguito, ma
un altro errore si e' presentato, e qui mi son dovuto arrendere... ecco il
listato:
(ottengo un errore di questo genere per ogni linea del file devlist.h)
devlist.h:6943: __devices_ecc0 causes a section type conflict
devlist.h:6946: __devices_edd8 causes a section type conflict
devlist.h:6953: __devices_fa57 causes a section type conflict
devlist.h:6956: __devices_feda causes a section type conflict
devlist.h:6959: __devices_fffe causes a section type conflict
devlist.h:6963: __devices_ffff causes a section type conflict
e poi:
In file included from names.c:50:
devlist.h:1279:32: warning: trigraph ??) ignored
devlist.h:6369:24: warning: trigraph ??) ignored
make[3]: *** [names.o] Error 1
make[3]: Leaving directory `/usr/src/linux-2.4.2/drivers/pci'
make[2]: *** [first_rule] Error 2
make[2]: Leaving directory `/usr/src/linux-2.4.2/drivers/pci'
make[1]: *** [_subdir_pci] Error 2
make[1]: Leaving directory `/usr/src/linux-2.4.2/drivers'
make: *** [_dir_drivers] Error 2
Ho visto che il devlist.h viene generato da un proggie nella stessa
directory (...../driver/pci) ma sinceramente non saprei dire quale possa
essere il problema...
Chi mi puo' aiutare ?
Grazie comunque

 suddetto kernel (ma li ho anche con la 2.4.0):
i kernel iniziali della serie 2.4 era tutto fuoriché affidabili e
stabili.
 Guarda se riesci a fare un port della patch sugli ultimi kernel.

>  Guarda se riesci a fare un port della patch sugli ultimi kernel.
purtroppo il mio livello attuale di conoscenze non credo me lo permetta...
comunque grazie per la risposta ;-)