Noyau Linux auto-construit avec clang

Construisez automatiquement le noyau Linux avec clang. La méthode est écrite avant C'est presque la même chose que la construction avec gcc. clang utilise celui qui était Installé dans le post précédent.

environnement

Préparation

Gardez-le dans votre PATH afin de pouvoir utiliser la commande clang.

% export PATH=(somewhere)/bin:$PATH

Obtenez la source, déployez-la et corrigez-la.

% wget https://kojipkgs.fedoraproject.org//packages/kernel/5.4.16/200.fc31/src/kernel-5.4.16-200
.fc31.src.rpm
% mkdir files
% cd files
% rpm2cpio ../kernel-5.4.16-200.fc31.src.rpm |cpio  -id
% tar Jxf  linux-5.4.tar.xz
% cd linux-5.4
% xz -dc ../patch-5.4.16.xz  | patch -p1
% for i in `ls ../*patch`;do;patch -p1 < $i;done

Construire

Obtenez le modèle .config et créez oldconfig.

% cp ../kernel-x86_64-fedora.config .config
% yes "" | make CC=clang oldconfig

Maintenant, exécutez menuconfig puis compilez. Décochez "Piratage du noyau-> Vérifications à la compilation et options du compilateur-> Générer des informations de type BTF".

% make CC=clang menuconfig
% make -j12 CC=clang deb-pkg LOCALVERSION=-my KDEB_PKGVERSION=1

Installation

% cd ..
% su
# dpkg -i linux-image-5.4.16-my_1_amd64.deb linux-headers-5.4.16-my_1_amd64.deb

prime

Après le redémarrage et le démarrage avec le nouveau noyau, vous verrez le libellé suivant dans /var/log/kern.log:

Feb  1 19:08:49 localpc kernel: [    0.000000] Linux version 5.4.16-my (tekito2@my-desktop3) (clang version 9.0.0 (tags/RELEASE_900/final)) #1 SMP Sat Feb 1 18:20:36 JST 2020

Recommended Posts

Noyau Linux auto-construit avec clang
Obtenez la dernière version du noyau Linux avec ArchLinux
À propos des paramètres du noyau Linux
Méthode Kernel avec Python
Linux (Lubuntu) avec OneMix3S
Vérifiez la version du noyau Linux
Version du noyau Linux 5.x (3/4)
Version du noyau Linux 5.x (4/4)
Version du noyau Linux 5.x (1/4)
Régression du noyau avec Numpy uniquement
Compilation du noyau Linux pour DE10nano
Jouez avec les partitions Linux
Apprentissage profond du noyau avec Pyro
L'apprentissage le plus rapide sous Linux avec AWS
Utilisez WDC-433SU2M2 avec Manjaro Linux
[Reconstruction du noyau LINUX] Mise à jour (4.18.0 → 5.8.8)
Préparer l'environnement pipenv avec Amazon Linux 2
Documentation relative au modèle de mémoire du noyau Linux
Noyau Linux, son rapport d'histoire de 29 ans
[Linux] Restauration du système d'exploitation avec la commande restore
Essayez le mécanisme de verrouillage du noyau Linux
[Linux] [module du noyau] Créer kthread dans le module du noyau
Jouez avec les partitions Linux ~ Suite ~
analyse de la source linux (noyau): appel système
Utiliser un noyau personnalisé avec WSL2
Exploitez l'espace de noms réseau Linux avec Go