View Full Version : [HELP] Errore durante compilazione Kernel !
Su un sistema Red Hat 9 con kernel 2.4.20-18.9 ho eliminato un pò di robaccia inutile dentro il config x compilare un kernel + leggero MA quando lancio il "make dep" ottengo come errore finale questo :
make update-modverfile
make[1]: Entering directory `/usr/src/linux-2.4.20-18.9'
/usr/src/linux-2.4.20-18.9/include/linux/modversions.h was not updated
make[1]: Leaving directory `/usr/src/linux-2.4.20-18.9'
(find /usr/src/linux-2.4.20-18.9 \( -name .depend -o -name .hdepend \) -print | xargs awk -f scripts/include_deps) > tmp_include_depends
sed -ne 's/^\([^ ].*\):.*/ \1 \\/p' tmp_include_depends > tmp_include_depends_1
(echo ""; echo "all: \\"; cat tmp_include_depends_1; echo "") >> tmp_include_depends
rm tmp_include_depends_1
Da quello ke posso capire c'e' 1 problema di dipendenze MA quale ?
TNK
ilsensine
05-01-2005, 12:38
Non vedo nessun errore dalle righe che hai postato.
Originariamente inviato da ilsensine
Non vedo nessun errore dalle righe che hai postato.
Uhmm... mi sai dire dove si attiva il modulo chiamato cdrom.o ?
ilsensine
05-01-2005, 12:51
E' implicito all'attivazione di un driver che richiede cdrom.o (ad es. ide-cd oppure sr_mod).
Originariamente inviato da ilsensine
E' implicito all'attivazione di un driver che richiede cdrom.o (ad es. ide-cd oppure sr_mod).
Ah ecco....
Allora nn capisco come mai il "make modules" mi restituisce questo errore :
scripts/split-include include/linux/autoconf.h include/config
make -r -f tmp_include_depends all
make[1]: Entering directory `/usr/src/linux-2.4.20-18.9'
make[1]: Circular /usr/src/linux-2.4.20-18.9/include/asm/smplock.h <- /usr/src/linux-2.4.20-18.9/include/linux/interrupt.h dependency dropped.
make[1]: Circular /usr/src/linux-2.4.20-18.9/include/linux/netfilter_ipv4/ip_conntrack_helper.h <- /usr/src/linux-2.4.20-18.9/include/linux/netfilter_ipv4/ip_conntrack.h dependency dropped.
make[1]: Leaving directory `/usr/src/linux-2.4.20-18.9'
make -C kernel CFLAGS="-D__KERNEL__ -I/usr/src/linux-2.4.20-18.9/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/linux-2.4.20-18.9/include/linux/modversions.h" MAKING_MODULES=1 modules
make[1]: Entering directory `/usr/src/linux-2.4.20-18.9/kernel'
make[1]: Nothing to be done for `modules'.
make[1]: Leaving directory `/usr/src/linux-2.4.20-18.9/kernel'
make -C drivers CFLAGS="-D__KERNEL__ -I/usr/src/linux-2.4.20-18.9/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/linux-2.4.20-18.9/include/linux/modversions.h" MAKING_MODULES=1 modules
make[1]: Entering directory `/usr/src/linux-2.4.20-18.9/drivers'
make -C addon modules
make[2]: Entering directory `/usr/src/linux-2.4.20-18.9/drivers/addon'
make[2]: Nothing to be done for `modules'.
make[2]: Leaving directory `/usr/src/linux-2.4.20-18.9/drivers/addon'
make -C block modules
make[2]: Entering directory `/usr/src/linux-2.4.20-18.9/drivers/block'
make[2]: Nothing to be done for `modules'.
make[2]: Leaving directory `/usr/src/linux-2.4.20-18.9/drivers/block'
make -C cdrom modules
make[2]: Entering directory `/usr/src/linux-2.4.20-18.9/drivers/cdrom'
gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-18.9/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/linux-2.4.20-18.9/include/linux/modversions.h -nostdinc -iwithprefix include -DKBUILD_BASENAME=cdrom -DEXPORT_SYMTAB -c cdrom.c
In file included from /usr/src/linux-2.4.20-18.9/include/linux/spinlock.h:56,
from /usr/src/linux-2.4.20-18.9/include/linux/module.h:11,
from cdrom.c:255:
/usr/src/linux-2.4.20-18.9/include/asm/spinlock.h:9: invalid suffix on integer constant
/usr/src/linux-2.4.20-18.9/include/asm/spinlock.h:9: parse error before numeric constant
/usr/src/linux-2.4.20-18.9/include/asm/spinlock.h:10: `printk_R_ver_str' declared as function returning a function
/usr/src/linux-2.4.20-18.9/include/asm/spinlock.h:10: warning: function declaration isn't a prototype
In file included from /usr/src/linux-2.4.20-18.9/include/linux/prefetch.h:13,
from /usr/src/linux-2.4.20-18.9/include/linux/list.h:6,
from /usr/src/linux-2.4.20-18.9/include/linux/module.h:12,
from cdrom.c:255:
/usr/src/linux-2.4.20-18.9/include/asm/processor.h:60: warning: parameter names (without types) in function declaration
/usr/src/linux-2.4.20-18.9/include/asm/processor.h:60: field `loops_per_jiffy_R_ver_str' declared as a function
/usr/src/linux-2.4.20-18.9/include/asm/processor.h:83: invalid suffix on integer constant
/usr/src/linux-2.4.20-18.9/include/asm/processor.h:83: parse error before numeric constant
/usr/src/linux-2.4.20-18.9/include/asm/processor.h:83: warning: function declaration isn't a prototype
/usr/src/linux-2.4.20-18.9/include/asm/processor.h:266: invalid suffix on integer constant
/usr/src/linux-2.4.20-18.9/include/asm/processor.h:266: parse error before numeric constant
/usr/src/linux-2.4.20-18.9/include/asm/processor.h:266: warning: function declaration isn't a prototype
/usr/src/linux-2.4.20-18.9/include/asm/processor.h:270: warning: parameter names (without types) in function declaration
In file included from cdrom.c:255:
/usr/src/linux-2.4.20-18.9/include/linux/module.h:183: invalid suffix on integer constant
/usr/src/linux-2.4.20-18.9/include/linux/module.h:183: parse error before numeric constant
/usr/src/linux-2.4.20-18.9/include/linux/module.h:183: `inter_module_register_R_ver_str' declared as function returning a function
/usr/src/linux-2.4.20-18.9/include/linux/module.h:183: warning: function declaration isn't a prototype
/usr/src/linux-2.4.20-18.9/include/linux/module.h:184: invalid suffix on integer constant
/usr/src/linux-2.4.20-18.9/include/linux/module.h:184: parse error before numeric constant
/usr/src/linux-2.4.20-18.9/include/linux/module.h:184: `inter_module_unregister_R_ver_str' declared as function returning a function
/usr/src/linux-2.4.20-18.9/include/linux/module.h:184: warning: function declaration isn't a prototype
/usr/src/linux-2.4.20-18.9/include/linux/module.h:185: `inter_module_get_R_ver_str' declared as function returning a function
/usr/src/linux-2.4.20-18.9/include/linux/module.h:185: warning: parameter names (without types) in function declaration
/usr/src/linux-2.4.20-18.9/include/linux/module.h:186: `inter_module_get_request_R_ver_str' declared as function returning a function
/usr/src/linux-2.4.20-18.9/include/linux/module.h:186: warning: parameter names (without types) in function declaration
/usr/src/linux-2.4.20-18.9/include/linux/module.h:187: invalid suffix on integer constant
/usr/src/linux-2.4.20-18.9/include/linux/module.h:187: parse error before numeric constant
/usr/src/linux-2.4.20-18.9/include/linux/module.h:187: `inter_module_put_R_ver_str' declared as function returning a function
/usr/src/linux-2.4.20-18.9/include/linux/module.h:187: warning: function declaration isn't a prototype
/usr/src/linux-2.4.20-18.9/include/linux/module.h:196: `try_inc_mod_count_R_ver_str' declared as function returning a function
/usr/src/linux-2.4.20-18.9/include/linux/module.h:196: warning: parameter names (without types) in function declaration
make[2]: *** [cdrom.o] Error 1
make[2]: Leaving directory `/usr/src/linux-2.4.20-18.9/drivers/cdrom'
make[1]: *** [_modsubdir_cdrom] Error 2
make[1]: Leaving directory `/usr/src/linux-2.4.20-18.9/drivers'
make: *** [_mod_drivers] Error 2
ilsensine
05-01-2005, 13:09
Non capisco che casino hai fatto, ma hai fatto qualche casino.
Nel dubbio fai così:
copia il tuo vecchio .config:
cp .config _config.old
ripulisci l'ambiente di compilazione:
make mrproper
Lancia ora make menuconfig/xconfig per ricaricare il vecchio file di configurazione. Salva & esci, quindi ritenta make dep modules.
nb se cambi qualcosa nel kernel che stai utilizzando, ti consiglio di "cambiare nome al kernel": basta che modifichi la riga EXTRAVERSION= con quello che vuoi, all'inizio del Makefile principale. Questo ti consentirà di giocare con il nuovo kernel, senza avere problemi di collisioni col vecchio (che puoi così sempre lanciare senza problemi). Per il sistema, saranno due kernel completamente differenti.
Grazie... dopo il make mrproper le cose vanno meglio...
Ho già provveduto a cambiare l'extraversion così nn c sarà il problema ke mi sovrascriverà i moduli dentro /lib/modules...
:)
P.S. Dopo il make modules i moduli *.o dove vengono creati ? Per usare un modulo precedentemente inesistente devo fare x forza il make modules_install oppure basta ke copio il suddetto modulo nell'attuale /lib/modules/xxx ?
ilsensine
05-01-2005, 14:27
Viene creato...nella "sua" directory, ovviamente.
make modules_install è consigliato comunque, in quanto rilancia depmod per ricalcolare le dipendenze.
Originariamente inviato da ilsensine
Viene creato...nella "sua" directory, ovviamente.
make modules_install è consigliato comunque, in quanto rilancia depmod per ricalcolare le dipendenze.
Ho capito..... tnk
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.