logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
doc:systeme:kernel:compiler [08/05/2017 21:49]
naguam [Compiler un kernel de kernel.org]
doc:systeme:kernel:compiler [08/05/2017 23:35]
naguam [Étape 3 Téléchargement et vérification de l'intégrité du kernel]
Ligne 31: Ligne 31:
 <note importante>​Nous n'​avons pas besoin d'​être en root, sauf pour installer les paquets apt au début et le kernel à la fin !</​note>​ <note importante>​Nous n'​avons pas besoin d'​être en root, sauf pour installer les paquets apt au début et le kernel à la fin !</​note>​
  
-======EN COURS DE MISE À JOUR======+
 ===== Étape 1 Prérequis et Dépendances ===== ===== Étape 1 Prérequis et Dépendances =====
  
Ligne 37: Ligne 37:
  
 Installer les paquets : Installer les paquets :
-<code root>apt install build-essential fakeroot libncurses5-dev dpkg-dev libssl-dev bc gnupg</​code>​+<code root>apt install build-essential fakeroot libncurses5-dev dpkg-dev libssl-dev bc gnupg dirmngr</​code>​
  
 C'​est-à-dire : C'​est-à-dire :
Ligne 75: Ligne 75:
 <note important>​**Les commandes du cadre suivant sont à copier coller ligne par ligne en modifiant juste la version (pour une version voulue) du kernel à télécharger. Cette automatisation a été conçue pour les kernels de kernel.org.** Si vous compilez à partir d'​autres sources, il vous faudra comprendre le fonctionnement **gpg** et l'​automatisation (au copier collé par lignes) ne seras pas fonctionnelle.</​note>​ <note important>​**Les commandes du cadre suivant sont à copier coller ligne par ligne en modifiant juste la version (pour une version voulue) du kernel à télécharger. Cette automatisation a été conçue pour les kernels de kernel.org.** Si vous compilez à partir d'​autres sources, il vous faudra comprendre le fonctionnement **gpg** et l'​automatisation (au copier collé par lignes) ne seras pas fonctionnelle.</​note>​
  
-Pour automatiser un peu, voici un exemple avec le kernel 4.10.14 (à changer par la version du kernel que vous voulez: +Pour automatiser un peu, voici un exemple avec le kernel 4.10.14 (à changer par la version du kernel que vous voulez)
-<code user>cd ~ # on va dans son répertoire perso +<code user>​kversion=4.10.14 #​ la version du kernel à changer
-kversion=4.10.14 #​ la version du kernel à changer+
 wget https://​www.kernel.org/​pub/​linux/​kernel/​v${kversion:​0:​1}.x/​linux-$kversion.tar.xz ​   # les sources du kernel wget https://​www.kernel.org/​pub/​linux/​kernel/​v${kversion:​0:​1}.x/​linux-$kversion.tar.xz ​   # les sources du kernel
 wget https://​www.kernel.org/​pub/​linux/​kernel/​v${kversion:​0:​1}.x/​linux-$kversion.tar.sign ​   # la signature des sources</​code>​ wget https://​www.kernel.org/​pub/​linux/​kernel/​v${kversion:​0:​1}.x/​linux-$kversion.tar.sign ​   # la signature des sources</​code>​
Ligne 86: Ligne 85:
 <code user>xz -cd linux-$kversion.tar.xz | gpg --verify linux-$kversion.tar.sign - | grep ^.*key</​code>​ <code user>xz -cd linux-$kversion.tar.xz | gpg --verify linux-$kversion.tar.sign - | grep ^.*key</​code>​
 <​code>​gpg:​ Signature made mer. 03 mai 2017 17:38:11 CEST <​code>​gpg:​ Signature made mer. 03 mai 2017 17:38:11 CEST
-gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E+gpg: using RSA key **647F28654894E3BD457199BE38DBBDC86092693E**
 gpg: Can't check signature: Pas de clef publique</​code>​ gpg: Can't check signature: Pas de clef publique</​code>​
 on extrait la clé, **signature inconnue**, on va la chercher: on extrait la clé, **signature inconnue**, on va la chercher:
-<code user>gpg --keyserver hkp://​keys.gnupg.net --recv-keys 647F28654894E3BD457199BE38DBBDC86092693E</​code>​+<code user>gpg --keyserver hkp://​keys.gnupg.net --recv-keys ​**647F28654894E3BD457199BE38DBBDC86092693E**</​code>​
 <​code>​gpg:​ key 38DBBDC86092693E:​ public key "Greg Kroah-Hartman (Linux kernel stable release signing key) greg@kroah.com"​ imported <​code>​gpg:​ key 38DBBDC86092693E:​ public key "Greg Kroah-Hartman (Linux kernel stable release signing key) greg@kroah.com"​ imported
 gpg: no ultimately trusted keys found gpg: no ultimately trusted keys found
Ligne 98: Ligne 97:
 <​code>​gpg:​ Signature made mer. 03 mai 2017 17:38:11 CEST <​code>​gpg:​ Signature made mer. 03 mai 2017 17:38:11 CEST
 gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E
-gpg: Good signature from "Greg Kroah-Hartman (Linux kernel stable release signing key) greg@kroah.com"​ [unknown]+gpg: **Good signature** from "Greg Kroah-Hartman (Linux kernel stable release signing key) greg@kroah.com"​ [unknown]
 gpg: WARNING: This key is not certified with a trusted signature! gpg: WARNING: This key is not certified with a trusted signature!
 gpg: There is no indication that the signature belongs to the owner. gpg: There is no indication that the signature belongs to the owner.
Ligne 118: Ligne 117:
    
 On [[doc:​systeme:​tar|décompresse le kernel téléchargé]] avec cette commande : On [[doc:​systeme:​tar|décompresse le kernel téléchargé]] avec cette commande :
-<code user>tar -xaf linux-X.X-X.tar.xz</​code>​+<code user>tar -xaf linux-X.X-X.tar.xz </​code>​
  
 On se **déplace dans le nouveau dossier** créé par la décompression On se **déplace dans le nouveau dossier** créé par la décompression
Ligne 184: Ligne 183:
    
  
-<code user>​fakeroot make deb-pkg -jX LOCALVERSION=-nomanecdotique KDEB_PKGVERSION=$(make kernelversion)-1</​code>​+<code user>​fakeroot make deb-pkg -j$(nproc) ​LOCALVERSION=-nomanecdotique KDEB_PKGVERSION=$(make kernelversion)-1</​code>​
 <code user>​fakeroot make deb-pkg -j$(nproc) LOCALVERSION=-$(dpkg --print-architecture) KDEB_PKGVERSION=$(make kernelversion)-1</​code>​ <code user>​fakeroot make deb-pkg -j$(nproc) LOCALVERSION=-$(dpkg --print-architecture) KDEB_PKGVERSION=$(make kernelversion)-1</​code>​
 +
 +A cause de l'​**étape 5 2nde sous-partie** il se pourrait que vous le terminal vous demande de valider ou d'​écrire quelque chose, tapez ''​**entrée**''​ à chaque fois.
  
 ==== Explications ==== ==== Explications ====
Ligne 191: Ligne 192:
   * **fakeroot** va nous permettre de compiler sans être en ''​root''​   * **fakeroot** va nous permettre de compiler sans être en ''​root''​
   * **make** est l'​outil qui va chercher les instructions dans le ''​Makefile''​ qui va donner les instructions au compilateur.   * **make** est l'​outil qui va chercher les instructions dans le ''​Makefile''​ qui va donner les instructions au compilateur.
-  * ''​**-j$(nproc)**''​ on attribue tous les ''​threads''​ possibles \\+  * ''​**-j$(nproc)**''​ on attribue tous les ''​threads''​ possibles, on peut remplacer ''​**$(nproc)**''​ par le nombre de threads voulu en ne dépaçant pas le nombre maximum de threads maximum de votre processeur ​\\
    ce n'est pas obligatoire,​ mais cela permet d'​augmenter la vitesse de compilation,​ le processeur travaillant en entier sur tout ses cores avec tout ses threads avec cette option.    ce n'est pas obligatoire,​ mais cela permet d'​augmenter la vitesse de compilation,​ le processeur travaillant en entier sur tout ses cores avec tout ses threads avec cette option.
   * **LOCALVERSION=-$(dpkg --print-architecture)**,​ optionnel, sert à nommer son kernel, au plus près du nommage Debian \\   * **LOCALVERSION=-$(dpkg --print-architecture)**,​ optionnel, sert à nommer son kernel, au plus près du nommage Debian \\
Ligne 233: Ligne 234:
  
 __Vous pouver aussi déinstaller avec apt.__ __Vous pouver aussi déinstaller avec apt.__
 +<note warning>​Moi sur la plupart des macines sur lesquelles j'ai appliqué le tutoriel j'​avais ensuite un message au boot de ''​pcspkr is already registered''​ du coup j'ai dû le blacklister:​ <code root>​echo blacklist pcspkr > /​etc/​modprobe.d/​blacklist-pcspkr.conf</​code></​note>​
  
 ==== Avertissement ==== ==== Avertissement ====
doc/systeme/kernel/compiler.txt · Dernière modification: 01/10/2023 11:30 par captnfab

Pied de page des forums

Propulsé par FluxBB