Compiler mon noyau

Fermé
mickmick Messages postés 255 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 18 novembre 2006 - 12 nov. 2005 à 00:17
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 - 26 nov. 2005 à 01:31
salut,
j'ai un petit quand je veux recompiler le noyau...
je fais mes modif, j'enregistre et
/usr/src/kernels/2.6.11-1.1369_FC4-i686> make
CHK include/linux/version.h
CHK include/asm-i386/asm_offsets.h
make[1]: *** Pas de règle pour fabriquer la cible « init/main.o », nécessaire pour « init/built-in.o ». Arrêt.
make: *** [init] Erreur 2
voila, je ne sais pas pourquoi ca ne fonctionne pas...
si quelqu'un veut bien m'aider??
merci @+

16 réponses

mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
14 nov. 2005 à 01:27
Bizarre en effet. On dirait qu'il manque un fichier source dans ton noyau (init/main.c ). Tu es sûr que tes sources de noyaux sont bonnes, que tu ne l'as pas dégagé par erreur ?

Tu as bien fais un make menuconfig juste avant pour choisir quoi mettre dans ton noyau (je doute que ça change grand chose mais bon...) ?

Bonne chance
0
mickmick Messages postés 255 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 18 novembre 2006
15 nov. 2005 à 10:38
comment je peux savoir si mes sources sont bien installées??
yum install kernel-sources??
je vais essayer ca ce week end
@+
0
mickmick Messages postés 255 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 18 novembre 2006
18 nov. 2005 à 21:37
yum install kernel-source
nothing to do.
mais quand le fait ls /usr/src/redhat/sources
le dossier est vide...
Normal?? je vais essayer l'install manuelle...
@+
0
mickmick Messages postés 255 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 18 novembre 2006
19 nov. 2005 à 12:35
je viens d'installer les sources, je tappe make et au bout d'environ 15 min voila ce qu'il me dit :
...
...
...
CC [M] drivers/crypto/padlock-generic.o
CC [M] drivers/crypto/padlock-aes.o
LD [M] drivers/crypto/padlock.o
CC [M] drivers/firmware/edd.o
CC [M] drivers/i2c/i2c-core.o
In file included from drivers/i2c/i2c-core.c:29:
include/linux/i2c.h:58: erreur: les éléments du tableau sont de type incomplet
include/linux/i2c.h:197: erreur: les éléments du tableau sont de type incomplet
drivers/i2c/i2c-core.c: In function ‘i2c_transfer’:
drivers/i2c/i2c-core.c:594: erreur: le type du paramètre formel 2 est incomplet
drivers/i2c/i2c-core.c: In function ‘i2c_master_send’:
drivers/i2c/i2c-core.c:620: erreur: le type du paramètre formel 2 est incomplet
drivers/i2c/i2c-core.c: In function ‘i2c_master_recv’:
drivers/i2c/i2c-core.c:649: erreur: le type du paramètre formel 2 est incomplet
make[2]: *** [drivers/i2c/i2c-core.o] Erreur 1
make[1]: *** [drivers/i2c] Erreur 2
make: *** [drivers] Erreur 2

voila, je ne comprend pas... merci @+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
20 nov. 2005 à 01:24
En effet il ne parvient actuellement pas à compiler le module i2c. Il faut comprendre par là que le code de ce module est bancale donc voici des solutions, de la plus pertinente à la moins pertinente :

1 - soit tu prends un autre noyau

2 - soit tu trouves un patch (en priant pour que ca corrige le problème)

3 - soit tu vires l'i2c si tu n'en as pas besoin (ce qui consiste à le virer de ton noyau, compiler ton noyau, rajouter une entree dans ton boot loader (lilo/grub) vers ce noyau de tester, lancer /sbin/lilo (si tu utilises lilo)) et vérifier si ce noyau boote et que ton matos marche. Si ce n'est pas le cas il faut naturellement opter pour une autre solution ;)

4 - soit tu mets à jour ton gcc (en priant pour que du coup, ca compile)

Bonne chance
0
mickmick Messages postés 255 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 18 novembre 2006
20 nov. 2005 à 11:51
ca sert à quoi l'i2c??
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
21 nov. 2005 à 01:05
Cf google. Ou encore dans ton noyau la device drivers > i2c support > help
  │ CONFIG_I2C:                                                                                     │
  │                                                                                                 │
  │ I2C (pronounce: I-square-C) is a slow serial bus protocol used in                               │
  │ many micro controller applications and developed by Philips.  SMBus,                            │
  │ or System Management Bus is a subset of the I2C protocol.  More                                 │
  │ information is contained in the directory <file:Documentation/i2c/>,                            │
  │ especially in the file called "summary" there.                                                  │
  │                                                                                                 │
  │ Both I2C and SMBus are supported here. You will need this for                                   │
  │ hardware sensors support, and also for Video For Linux support.                                 │
  │                                                                                                 │
  │ If you want I2C support, you should say Y here and also to the                                  │
  │ specific driver for your bus adapter(s) below.                                                  │
  │                                                                                                 │
  │ This I2C support can also be built as a module.  If so, the module                              │
  │ will be called i2c-core. 


  │ CONFIG_I2C_CHARDEV:                                                                             │
  │                                                                                                 │
  │ Say Y here to use i2c-* device files, usually found in the /dev                                 │
  │ directory on your system.  They make it possible to have user-space                             │
  │ programs use the I2C bus.  Information on how to do this is                                     │
  │ contained in the file <file:Documentation/i2c/dev-interface>.                                   │
  │                                                                                                 │
  │ This support is also available as a module.  If so, the module                                  │
  │ will be called i2c-dev.


Voilou. De toute façon si tu gardes une entrée dans ton lilo/grub vers l'ancien nyau, tu peux essayer de compiler un noyau de test en le dégageant et tu verras si ça marche ou pas sans. Mais bon à ta place je verifierai que s'il n'y a pas de noyau plus récent.

Bonne chance
0
mickmick Messages postés 255 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 18 novembre 2006
23 nov. 2005 à 13:43
oui merci, je suis allé voir, mais j'en ai besoin aussi de celui la pour usbvision, est-ce que si je remplace les fichier défectueux (i2c.h et i2c_core.c) par d'autre venant d'autres sources ca pourrai marcher??

sinon j'ai plus q'a me trouver d'autres sources... je ne trouve pas les sources du dernier noyau...(2.6.14) et la fonction yum install sources ne fonctiionne pas
bad!!
je reessaye et je vous redit ca @+
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
23 nov. 2005 à 18:21
Mmmh je pense que le mieux est de télécharger des sources de noyau, en effet, quitte à ce que soit la version que tu utilises. Je ne suis pas un expert yum mais ce n'est pas plutôt kernel-sources le nom du package ?
0
mickmick Messages postés 255 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 18 novembre 2006
24 nov. 2005 à 09:04
oui au fait yum install kernel-source! mais ca ne fonctionne pas non plus.... je cherche...
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
24 nov. 2005 à 16:23
Le message d'erreur !!!!! Sinon on ne peut pas t'aider :-)
0
mickmick Messages postés 255 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 18 novembre 2006
24 nov. 2005 à 17:28
yum install kernel-source ( et ses variantes )
nothing to do

je vais essayer avec le noyau 2.6.13
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
24 nov. 2005 à 19:57
Moi je pense que tu peux rester en 2.6.14. En fait je pense que tu as du degager le fichier qui te manque par erreur. Backupe tes sources de kernel actuel :
mv /usr/src/kernels/2.6.14 /usr/src/kernels/2.6.14.bak
yum uninstall  kernel-source (je suppose)
yum install  kernel-source
cd /usr/src/kernel/2.6.14
make menuconfig
....

Sinon tu peux effectivement tester un autre noyau

Bonne chance
0
Phiphi57 Messages postés 789 Date d'inscription samedi 26 février 2005 Statut Contributeur Dernière intervention 19 juillet 2009 295
24 nov. 2005 à 22:27
Ou aller chercher le noyau officiel sur kernel.org ...
tant qu'a faire , si on le compile a la mimine...

enfin, pour bien faire faudrait connaitre les patchs ajoutés a sa distrib pour choisir en connaissance de cause! mais bonjour les jours de lecture! ;-)

Phiphi
0
mickmick Messages postés 255 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 18 novembre 2006
25 nov. 2005 à 18:54
bon c'est bon j'ai réussi a compiler le noyau 2.6.13 mais y'a des erreurs :
- au démarrage il me dit un truc dans le genre : cannot allocate pci port 00000:0004 because of resource collision
-le son ne fonctionne plus,
-toujours pas mon touchpad...
voila merci pour tout @+
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
26 nov. 2005 à 01:31
Je pense que la tu as oublié des morceaux dans ton noyau (alsa ou oss pour le son par exemple). Ce que je te suggère c'est de te calquer sur ton 2.6;14 en lançant un make menuconfig en parallèle sur les deux noyau. Tu t'inspires du 2.6.14 pour remplir le 2.6.13, tu recompiles et installes le 2.6.13, tu lilotes et tu rebootes.

Mais bon dans l'autre sens ca aurait plus facile (2.6.13->2.6.14), en copiant le .config du 2.6.13 dans les sources 2.6.14 et en faisant un make oldconfig...

Bonne chance
0