On 04/29/2015 02:11 PM, humbert.olivie...@free.fr wrote:
Bonjour,
j'ai l'habitude de reconstruire mon noyau afin d'y intégrer une ou deux options
non-activées par le noyau de base Debian.
Pour cela, la méthode que j'utilise est la suivante :
0) Préparation
==============
("kernel-package", "fakeroot" et "build-essential" sont installés)
cd '/home/monuser/Bureau/oli/Librazik/04-Constructions
propres/Reconstructions propres'
mkdir 'monnoyau/'
cd 'monnoyau'
1) Récupération des sources avec rustines Debian et déballage
=============================================================
apt-get source linux-source-3.16
2) Mise en place
================
cd linux-3.16[TAB]
cp /boot/config-`uname -r` .config #pour récupérer la config' Debian actuelle
make oldconfig
3) Sélection des options
========================
make menuconfig
pour une configuration en mode "ncurses" (avec le paquet "libncurses5-dev"
installé)
Je personnalise les 2 options dont j'ai besoin.
Je donne un nom à ce noyau pour m'y retrouver
-> "General setup" -> "Local version - append to kernel release" -> mettre
"-monnoyau"
-> Puis je sors en enregistrant la configuration
4) Compilation
==============
make -j `nproc` LOCALVERSION= deb-pkg
qui me crée un beau .deb facilement manipulable avec les outils apt*
Mon problème est que cette méthode fonctionnait jusqu'à la dernière mis à jour
du noyau (Jessie) mais que maintenant, j'ai une erreur pendant la compilation :
...
... (zap)...
...
LD [M] sound/usb/usx2y/snd-usb-usx2y.ko
BUILDDEB
make[2]: warning: jobserver unavailable: using -j1. Add '+' to parent make
rule.
ln: la cible « ./debian/tmp/lib/modules/3.16.7-ckt9-monnoyau/source » n'est pas
un répertoire
Makefile:1094: recipe for target '_modinst_' failed
make[2]: *** [_modinst_] Error 1
scripts/package/Makefile:90: recipe for target 'deb-pkg' failed
make[1]: *** [deb-pkg] Error 2
Makefile:1203: recipe for target 'deb-pkg' failed
make: *** [deb-pkg] Error 2
si je regarde dans ./debian/tmp/lib/modules/3.16.7-ckt9-monnoyau/ , je n'ai effectivement pas de
répertoire nommé "source", uniquement un répertoire nommé "kernel" et c'est
donc certainement pour cela que la construction plante.
Je ne suis pas trop certain de par où il me faut chercher. J'ai utiliser les
moteurs de recherche avec des morceaux de ce message d'erreur ci-dessus, mais
n'y comprend pas grand chose et mon intuition me dit qu'il manque simplement
une règle de création de ce répertoire dans le processus de construction (cad:
debian/rules) ou quelque chose du genre.
Que me conseillez-vous de faire ?
Remarque annexe : ma "méthode" de construction est basée sur l'idée de coller
le plus possible au noyau Debian et de produire des .deb proprement installables et
dés-installables avec les outils apt*. Ceci dit, si il y a une meilleure méthode que
celle-là, je veux bien la connaître.
Bonjour
Tes commandes me semblent bien compliquées...
Je compile tous mes noyaux de la façon suivante sur Jessie et Sid.
Raison principale: désactiver tout ce qui est inutile et obtenir un vrai
noyau patché 'real-time' (l'outil 'ketchup' pour télécharger et patcher
est d'ailleurs génial)
Décompression du paquet source dans /usr/src
Configuration avec make menuconfig
Puis par exemple dans /usr/src/linux-3.14.38-rt36/ je lance:
make-kpkg --jobs 9 kernel_image --initrd
C'est tout, et le paquet .deb est disponible à la fin dans /usr/src
--
Maderios
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-requ...@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org
Archive: https://lists.debian.org/5540d30e.9080...@gmail.com