Ce message fait suite à " Cible manquante" -mal nommée-
1) la compilation ci-dessous
make -C /lib/modules/2.6.26-2-686/build SUBDIRS=/home/alain/PERSO/ES_LINUX/mod-noyau modules
indique:
echo " ERROR: Kernel configuration is invalid."; \
echo " include/linux/autoconf.h or include/config/auto.conf are missing."; \
echo " Run 'make oldconfig && make prepare' on kernel src to fix it."; \
c'est faux !!! ces 2 fichiers sont présents
ls -l ./include/linux/autoconf.h
-rw-r--r-- 1 alain alain 107220 jun 25 12:14 ./include/linux/autoconf.h
ls -l include/config/auto.conf
-rw-r--r-- 1 alain alain 68781 jun 25 12:14 include/config/auto.conf
Noter aussi:
ls -l .config
-rw-r--r-- 1 alain alain 91746 jun 25 12:01 .config
2) Dans le Makefile des sources (ligne 478) on trouve :
"# If .config is newer than include/config/auto.conf, someone tinkered
# with it and forgot to run make oldconfig."
On pourrait conclure des infos ci-dessus que .config 'is newer than' auto.conf et qu'il faudrait utiliser make oldconfig pour remédier à cet état de fait...
Or make oldconfig génère un nouveau .config qui est 'newer than' le précédent ... faut-il remplacer 'newer' par 'older' ?
3) Dans ce même Makefile on trouve (ligne 940) :
prepare0: archprepare FORCE
$(Q)$(MAKE) $(build)=.
$(Q)$(MAKE) $(build)=. missing-syscalls
# All the preparing..
prepare: prepare0
# Leave this as default for preprocessing vmlinux.lds.S, which is now
# done in arch/$(ARCH)/kernel/Makefile
Lorsque l'on exécute make prepare on obtient :
scripts/kconfig/conf -s arch/x86/Kconfig
CHK include/linux/version.h
CHK include/linux/utsrelease.h
make[1]: *** Pas de règle pour fabriquer la cible « missing-syscalls ». Arrêt.
L'examen de .../linux-source-2.6.26/arch/x86/kernel/Makefile ne m'est pas d'un grand secours ...
Que faire pour que cette cible (missing-syscalls) trouve une règle ?
Mon archive est-elle corrompue ?
Merci pour vos suggestions.
Dernière modification par gargamel79 (03-07-2010 12:01:17)