[Resolu] Problème de compilation du noyau

Bonsoir à tous,

Je travaille sur une Lenny que j’ai upgradé depuis etch et je rencontre des problèmes (à la fin) pour recompiler mon noyau :

root@bandit:/usr/src/linux-source-2.6.26# make-kpkg --rootcmd fakeroot --initrd --append-to-version=.`date +%y%m%d`  kernel-image 

...
...
	 ./debian/templates.l10n   > ./debian/templates.master
install -p    -o root -g root  -m  644 ./debian/templates.master /usr/src/linux-source-2.6.26/debian/linux-image-2.6.26.081206/DEBIAN/templates
dpkg-gencontrol -DArchitecture=i386 -isp	     \
			-plinux-image-2.6.26.081206 -P/usr/src/linux-source-2.6.26/debian/linux-image-2.6.26.081206/
dpkg-gencontrol: erreur: le paquet linux-image-2.6.26.081206 n'est pas dans le fichier de contrôle
make[2]: *** [debian/stamp/binary/linux-image-2.6.26.081206] Erreur 255
make[2]: quittant le répertoire « /usr/src/linux-source-2.6.26 »
make[1]: *** [debian/stamp/binary/pre-linux-image-2.6.26.081206] Erreur 2
make[1]: quittant le répertoire « /usr/src/linux-source-2.6.26 »
make: *** [kernel-image] Erreur 2

Merci de votre aide :slightly_smiling:

Met à jour kernel-package par exemple…

Pour mettre à jour mon kernel-package, devrais-je le désinstallé, rajouter les dépôts de sid dans mon source.list et ensuite faire un aptitude update, et réinstaller le kernel package avec aptitude install kernel-package ?

Merci

Quand tu as mis à jour, il n’est pas évident que kernel-package ait suivi, donc essaye un bête update suivi de «install kernel-package». Si ça ne marche pas, il faudra creuser…

merci fran.b mais j’ai déjà essayé cela, et je croix que j’ai la plus récente version

redsonic@bandit:~$ aptitude show kernel-package
Paquet : kernel-package
État: installé
Automatiquement installé: non
Version : 11.015

C’est peu parlant je trouve pour voir la situation, je préfère le resultat d’apt-cache policy kernel-package.
Mais tu as raison, c’est la dernière version.

quelqu’un sait à quoi correspond cette erreur 225 dans la sortie ?

Oui, c’est vrai !
Bon, c’est con, parceque manifestement, ça plante à l’empaquetage, mais n’aurais tu pas fait un premier coup de make-kpkg, en prenant une autre valeur de --append-to-version=, avant de faire celle là ?
Parceque dans ce cas, il y a un fichier à supprimer (me souviens plus lequel) dans le rep debian, avant de relancer la compil, ou au pire, je te conseillerais de redéployer les sources, d’y ramener le .config de cette compil là, et recommencer avec ces sources vierges.

Bien vu mattotop, c’est ce que j’ai fais. J’ai tenté plusieurs fois la compilation, et ça foirait à chaque fois.

Pour redéployer les sources et commencer avec des sources vierges, est ce que : un make-kpkg clean suffit ?
ou devrais-je désinstaller avec aptitude remove --purge kernel-source et réinstaller de nouveau ?

Oui , je sais que je pose trop de questions, mais c’est pour prendre les bonnes habitudes :slightly_smiling:

non, je pensais juste à refaire le tar xzf du fichier tgz qu’installe le paquet des sources dans /usr/src.
Mais ça marche peut être avec un simple clean.

Merci mattotop, c’était ça.

J’ai supprimé le répertoire linux-source, j’ai refait un tar xvf linux-source.tar et j’ai relancé la commande :

root@bandit:/usr/src/linux-source-2.6.26-1-686#make-kpkg --rootcmd fakeroot --initrd --append-to-version=.`date +%y%m%d` kernel-image

ça créait mon linux-image-2.6.26.081207_2.6.26.081207-10.00.Custom_i386.deb

root@bandit:/usr/src# ll
total 297368
drwxr-xr-x  3 root root      4096 déc  5 23:15 kernel-patches
-rw-r--r--  1 root src   20202724 déc  7 01:30 linux-image-2.6.26.081207_2.6.26.081207-10.00.Custom_i386.deb
drwxr-xr-x 23 root root      4096 déc  7 01:29 linux-source-2.6.26
lrwxrwxrwx  1 root src         19 déc  5 23:53 linux-source-2.6.26-1-686 -> linux-source-2.6.26
-rw-r--r--  1 root src          0 déc  6 15:17 linux-source-2.6.26_2.6.26-10.00.Custom_i386.changes
-rw-r--r--  1 root root 283975680 nov  8 16:01 linux-source-2.6.26.tar
drwxr-xr-x  4 root root      4096 déc  5 23:15 linux-support-2.6.26-1
drwxr-xr-x  7 root root      4096 nov  8 17:35 rpm

par contre pourquoi il a son nom long comme ça , je croyais que ça allait être que :
linux-image-2.6.26.081207.deb ?

Bonne soirée :slightly_smiling:

c’est le noyau qui va avoir le nom que tu attends. Le paquet, je ne sais plus pourquoi il reprend tous ces éléments deux fois mais c’est logique.

Le nom du paquet se paramètre dans /etc/kernel-pkg.conf mais c’est pénible comme contrainte (nécessité du numéro de version). Donc ça donne pour les noms des paquets

linux-image_-<version-du-noyau-venant-du-non-de-kernel-pkg.conf>

c’est assez moche. J’ai fini par mettre un suffixe
debian = $(version)
pour minimiser les dégats.

Ok, je vous remercie.

Bonne continuation !

:slightly_smiling:

j’ai moi aussi un problème à la fin de la compilation du noyau sur une machine.

make[3]: quittant le répertoire « /usr/src/linux-2.6.28 » /usr/bin/make EXTRAVERSION=-version-perso ARCH=i386 \ -C Documentation/lguest make[3]: entrant dans le répertoire « /usr/src/linux-2.6.28/Documentation/lguest » cc -Wall -Wmissing-declarations -Wmissing-prototypes -O3 -I../../include -I../../arch/x86/include lguest.c -lz -o lguest lguest.c:34:18: erreur: zlib.h : Aucun fichier ou répertoire de ce type make[3]: *** [lguest] Erreur 1 make[3]: quittant le répertoire « /usr/src/linux-2.6.28/Documentation/lguest » make[2]: *** [debian/stamp/build/kernel] Erreur 2 make[2]: quittant le répertoire « /usr/src/linux-2.6.28 » make[1]: *** [debian/stamp/do-build-arch] Erreur 2 make[1]: quittant le répertoire « /usr/src/linux-2.6.28 » dpkg-buildpackage: échec: debian/rules build a produit une erreur de sortie de type 2 make: *** [debian/stamp/build/buildpackage] Erreur 2
j’ai suivi le tuto d’ashgenesis, qui a parfaitement fonctionné sur une de mes bécanes, mais pas sur deux autres.
j’ai essayé de trouver la solution à mon problème sur google, sans succès.

Le 2.6.28 n’étant pas encore sous debian officiellement, je te conseillerais plutot d’attendre pour que les sources 2.6.28 arrivent nettoyées/patchées sous debian.

Sinon, ton souci vient du manque d’un include zlib.h, et tu peux chercher le paquet qui fournit le bon zlib.h:
packages.debian.org/search?searc … e&arch=any
je dirais zlib1g-dev

Mais as tu installé le minimum pour compiler un noyau, genre kbuild et les build-essentials (je ne sais pas s’ils sont installés dans le tuto de ash).

oui oui, j’ai installé tout ce qu’il faut, et sur un des pc je n’ai eu aucune erreur, les paquets linux-image, linux-headers, linux-manual, linux-source et linux-doc ont été créés, j’ai pu installer le noyau 2.6.28 sans problème.
c’est sur 2 autres pc, avec le même mode opératoire, que ça n’a pas fonctionné.
je vais regarder du côté de zlib cet après-midi et je posterai le résultat ici.
merci matt.

c’était bien un problème de zlib.h réglé comme tu me l’avais conseillé par un "aptitude install zlib1g-dev"
merci.