Commit 0401f292 authored by kyodev's avatar kyodev

maj

parent 5c705bc9
Pipeline #48681 passed with stages
in 22 seconds
......@@ -3,7 +3,7 @@
* destination debian
* Création originale: naguam 03/01/2017
## 1- Dépendances
## Dépendances
Installer les paquets:
```shell
......@@ -12,7 +12,7 @@ apt update
apt install build-essential fakeroot libncurses5-dev dpkg-dev libssl-dev bc gnupg dirmngr flex bison libelf-dev
```
* depuis 4.16, nouvelles dépendances flex bison
* depuis 4.16, nouvelles dépendances flex bison libelf-dev
* à voir dans les sources: Documentation/process/changes.rst, tous les softs/versions nécessaires
* en ligne [sur kernel.org](https://www.kernel.org/doc/html/latest/process/changes.html#current-minimal-requirements)
......@@ -34,7 +34,7 @@ apt install libgtk2.0-dev libglade2-dev
exit
```
## 2- Préparation des dossiers
## Préparation des dossiers
tout est à faire en **user**
......@@ -46,9 +46,9 @@ mkdir -p ~/kernel
cd ~/kernel
```
## 3- Chargement
## Chargement
**les versions rc** releases candidates, sont destinées aux beta-testeurs ou aux aventuriers. elles ne sont pas signées, pas mainline, les liens ci après devront être adaptés.
**les versions rc** (releases candidates), sont destinées aux beta-testeurs ou aux aventuriers. elles ne sont pas signées, pas mainline, les liens ci après devront être adaptés.
```shell
# **/!\** modifier la version du kernel à charger selon la disponibilité
......@@ -111,7 +111,7 @@ _éventuellement pour voir/contacter les signataires de cette clé:_
gpg --list-sigs ABAF11C65A2970B130ABE3C479BE3E4300411886
```
## 4- Décompression
## Décompression
```shell
# on décompresse
......@@ -121,7 +121,7 @@ tar -xaf linux-$kversion.tar.xz
cd linux-$kversion
```
## 5- Configuration des options
## Configuration des options
à voir `make help`
......@@ -131,20 +131,15 @@ make mrproper # effacement des fichiers généréss + .config + divers fichiers
make distclean # comme _mrproper_ + effacement sauvegarde editeur et fichier patch
```
pour commencer
```shell
make mrproper
```
### 5-1 reprise des options actuelles ou nouvelles configs
### reprise des options actuelles ou nouvelles configs
```shell
make olddefconfig # réponse par défaut aux nouvelles options sans demander
make oldconfig # demande pour les nouvelles options du kernel
make oldconfig # config existant + demande pour les nouvelles options du kernel
make silentoldconfig # comme ci-dessus, moins verbeux, mise à jour des dépendances
make oldnoconfig # réponse **N** à tous les nouvelles options.
make oldnoconfig # config existant + réponse **N** à tous les nouvelles options.
make localmodconfig # config courante avec les modules chargés (lsmod) en désactivant les modules non chargés
# pour créer un autre Pc, enregistrer lsmod de cet autre Pc et le passer comme
# paramètre LSMOD
......@@ -172,7 +167,7 @@ Remarque, voir aussi `Documentation/kbuild/kconfig.txt`
si les options ne sont pas récupérées automatiquement pour former `.config`
voir dans ce cas `cp /boot/config-kernelPrecedant .config` ou `/usr/src/linux_headers-kernelPrecedant`
### 5-2 parcourir ou modifier les options manuellement
### parcourir ou modifier les options manuellement
```shell
make config # en console pure
......@@ -189,7 +184,7 @@ A voir:
* [documentation en ligne](https://www.kernel.org/doc/html/latest/admin-guide/index.html)
### 5-3 désactiver les clés existantes du kernel
### désactiver les clés existantes du kernel
voir: https://lists.debian.org/debian-kernel/2016/04/msg00579.html
......@@ -208,25 +203,30 @@ Provide system-wide ring of trusted keys (SYSTEM_TRUSTED_KEYRING) [Y/?] y
Provide a keyring to which extra trustable keys may be added (SECONDARY_TRUSTED_KEYRING) [N/y/?] n
```
### 5-4 Eviter de compiler debug
### éviter de compiler debug
```shell
./scripts/config -d CONFIG_DEBUG_INFO
```
## 6- Compilation
## Compilation
```shell
fakeroot make bindeb-pkg -j"$(nproc)" LOCALVERSION=-"$(dpkg --print-architecture)"
make bindeb-pkg -j"$(nproc)" LOCALVERSION=-"$(dpkg --print-architecture)"
cd ..
```
> avec certaines anciennes version de kernels, il fallait lancer la compilation avec fakeroot, mais plus maintenant
Rq:
* `-j"$(nproc)"` tous les threads possibles
* `-LOCALVERSION=-"$(dpkg --print-architecture)"` optionnel
* `-KDEB_PKGVERSION="$(make kernelversion)"-1`, optionnel, surcharge la version du paquet avec une révision qui est incrémentée et stockée dans le fichier .version
## 7- fichiers créés
## Fichiers créés
fichiers créés:
```text
......@@ -239,7 +239,7 @@ linux-libc-dev_...deb # entêtes pour certaines bibliothèques de code en espa
# pour le noyau comme GNU C (glibc)
```
## 8- Installation
## Installation
```shell
su
......@@ -248,7 +248,7 @@ dpkg -i linux-image-x.x.x-architecture
exit
```
## 9- Désinstallation
## Désinstallation
```shell
su
......@@ -304,7 +304,7 @@ exit
_compilation paquet standard_ :
```shell
fakeroot make deb-pkg -j"$(nproc)" LOCALVERSION=-"$(dpkg --print-architecture)" KDEB_PKGVERSION="$(make kernelversion)"-1
make deb-pkg -j"$(nproc)" LOCALVERSION=-"$(dpkg --print-architecture)" KDEB_PKGVERSION="$(make kernelversion)"-1
```
produit tous les fichiers additionnels pour publier sur un dépôt Debian
```text
......@@ -320,12 +320,9 @@ linux-image-...-dbg_...deb # symboles de débogage pour l'image du noyau et des
```
non présent avec -d CONFIG_DEBUG_INFO
### A voir
* <https://debian-handbook.info/browse/fr-FR/stable/sect.kernel-compilation.html>
* <https://kernel-handbook.alioth.debian.org/ch-common-tasks.html#s-common-official>
* <https://kernelnewbies.org/>
* <https://www.kernel.org/>
## 10- Raccourcis
a venir
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment