Compilation d'un noyau Linux nativement sur macOS : un voyage en enfer

2025-07-03
Compilation d'un noyau Linux nativement sur macOS : un voyage en enfer

Cet article détaille l'expérience de l'auteur lors de la compilation d'un noyau Linux (architecture RISC-V) nativement sur macOS. Le processus a été semé d'embûches : une version obsolète de make, l'incompatibilité du ld de macOS avec les attentes de Linux, l'absence des fichiers d'en-tête elf.h et byteswap.h, et des conflits de version avec uuid_t et sed. L'auteur a surmonté ces problèmes en utilisant Homebrew pour installer des chaînes d'outils à jour (make, llvm, lld, libelf, gnu-sed) et en créant des correctifs pour résoudre les incohérences des fichiers d'en-tête et les conflits de définition de type. Le noyau a été compilé avec succès, macOS étant plus rapide que Docker pour les compilations complètes, mais plus lent pour les compilations incrémentales. L'auteur conclut que la résolution des problèmes de compilation est un processus itératif et continu, similaire à l'intégration continue.

Développement