Erreur de compilation de kernel

Salut à tous,

Je suis en train de compiler un kernel et je rencontre une difficulté.

Voici les infos:
paquets installés: bin86, kernel-package, build-essential, libncurses5-dev
kernel: vanillia 2.6.22.19
patch: vserver + GrSecurity (linux-vserver.org/Welcome_to_Linux-VServer.org)
config: celle fournie avec le patch

Je télécharge le vanillia dans /usr/src.
Je décompresse l’archive.
Je fais un lien: ln -sf linux-2.6.22.19 linux
Je copie le patch dans linux: mv patch.diff linux
J’applique le patch: patch -p1 < patch.diff
Je renomme le fichier de config fourni par le site en .config
Je fais un “make menuconfig” sans changer les options
Je lance la compilation: make-kpkg --initrd --append-to-version=grvserv kernel_image.

AU bout de plusieurs minutes, il ne s’est rien passé. :imp:

J’interrompts la compilation.
Apparaît alors le message: [quote]Failed to create a ./debian directory: No such file or directory at /usr/bin/make-kpkg line 1096[/quote]
Une idée ?

merci

[code]cd /usr/src/linux
mkdir debian

et re…

make-kpkg --initrd --append-to-version=grvserv kernel_image.[/code] :question:

Il faut créer le répertoire debian avant la compilation ?
C’est nouveau ?

J’ai compilé un kernel cet été en etch aussi, et il ne fallait passer par cette étape.

Je vais essayer. Merci

Il faut créer le répertoire debian avant la compilation ?
C’est nouveau ?
(…)[/quote] Ben, j’sais pas. Mais en voyant le message…

[quote]patch: vserver + GrSecurity (linux-vserver.org/Welcome_to_Linux-VServer.org)
config: celle fournie avec le patch[/quote]

c’est pas des sources officielles debian çà…

c’est pour ça que make-kpkg (outil debian) ne retrouve pas ses petits.

utilises une compilation avec des outils non debian pour faire ton kernel. et installes le a la mano. (et apres t’auras d’autres problèmes)

apparement dans la FAQ du site ils indiquent comment faire pour debian. jetes y un oeil.

Hum, j’ai utilisé des sources linux originales (2.6.27-git1), je me suis contenter de déplier l’archive et ai fait un «fakeroot make-kpkg …». Le répertoire debian a été crée sans souci… Je n’ai jamais eu de souci de cet ordre.

Par contre il te faut

  1. Le faire en fakeroot
  2. Avoir un fichier .config (un simple touch .config suffit).

[quote]c’est pas des sources officielles debian çà…

c’est pour ça que make-kpkg (outil debian) ne retrouve pas ses petits.
[/quote]Tu peux tout a fait utiliser les outils Debian avec des sources vanillia. Les outils Debian ne sont qu’une sur-couche des outils normaux, pour simplifier les tâches d’administration (packaging, modification de grub ou lilo, copie du fichier de config dans /boot…)

[quote]Je n’ai jamais eu de souci de cet ordre.[/quote]Moi non plus, je suis un peu étonné.

[quote]1) Le faire en fakeroot
2) Avoir un fichier .config (un simple touch .config suffit).[/quote]
J’ai oublié de dire que j’avais renommé le fichier de config fourni par le site original en .config.
J’ai aussi fait un “make menuconfig” (sans changer les options) avant de lancer la compilation.

Je continue de chercher…

Je viens de remarquer que make-kpkg clean ne fonctionne pas non plus…

UPDATE:
J’ai fait un test sans patcher les sources du noyau: tout marche.
Donc à priori, c’est le patch du noyau qui perturbe

Fais tu tes commandes en fakeroot, c’est important, sinon ça foire…

Je suis en profil Root: donc je n’utilises pas fakeroot.

UPDATE:
J’ai tenté la compilation avec “make mrproper && make && make modules_install && make install”.

Le noyau se compile, le ramdisk aussi.
Mais une fois installé, il est impossible de booter avec.

Tu as tenté un make-kpkg debian ?
Sinon, “il est impossible de booter avec” oui, mais à quel moment ?
Tu as génèré l’initrd aussi ?

[quote=“Platinium”]Je suis en profil Root: donc je n’utilises pas fakeroot.

UPDATE:
J’ai tenté la compilation avec “make mrproper && make && make modules_install && make install”.

Le noyau se compile, le ramdisk aussi.
Mais une fois installé, il est impossible de booter avec.[/quote]
Étonnant, je viens de réessayer avec un source issu de kernel.org, ça ne m’a posé aucun souci. Seul un touch .config est nécessaire. Par contre je ne l’ai pas fait en root seul…

[quote]Tu as tenté un make-kpkg debian ?[/quote]Ce que j’expliquais dans les posts précédents c’est que avec make-kpkg, la compilation ne fonctionne pas (cf mon premier post).
Par contre avec les outils “make”, ca compile.

[quote]Tu as génèré l’initrd aussi [/quote]Oui, avec mkinitramfs.

[quote]Étonnant, je viens de réessayer avec un source issu de kernel.org, ça ne m’a posé aucun souci. Seul un touch .config est nécessaire. Par contre je ne l’ai pas fait en root seul…[/quote]Comme je disais avant, avec un kernel non patché, ça marche.
C’est une fois le patch (vserver) appliqué que ca ne fonctionne plus.

non, ben j’ai relu ce qu’on disait sur le message “Failed to create a ./debian directory: No such file or directory at /usr/bin/make-kpkg line 1096”, et à part l’obligation d’avoir un .config, et le make-kpkg debian, rien d’autre à faire normalement.
Bizarre. :confused:

Une remarque, je ne met pas de «=» entre le append-to-version et le gpserv, je mettrais
-append-to-version gpserv
Sinon je ne vois pas, les noyaux que j’utilise sont patchés unionfs et squashfs et n’ont posés aucuns pbms. Il faudrait voir le patch dans ce cas, peut être crée-t-il un répertoire debian mal foutu. Je te suggère de

  • déplier l’archive
  • faire le make-kpkg jusqu’au .config
  • Tu arrêtes le truc
  • Tu fais le patch
  • Tu recommences le make-kpkg

Je vais faire des tests en changeant la version du kernel.
Je commence à me demander si le patch a été développé pour cette version du kernel. :question: