Préparation
Tout d'abord, nous devons installer les prérequis requis. Je suppose que vous y avez sudo
accès.
sudo apt-get install git ncurses-dev make gcc-arm-linux-gnueabi
git
est le système de contrôle de version utilisé par l'équipe du noyau Linux.
ncurses
est une bibliothèque pour construire des menus de console. C'est nécessaire pour menuconfig
.
make
exécute la compilation pour nous.
gcc-arm-linux-gnueabi
est le compilateur croisé.
Ensuite, nous devons récupérer la source, exécutez:
git clone https://github.com/raspberrypi/linux raspberrypi-linux
cd raspberrypi-linux
Cela va cloner le code source dans un répertoire appelé raspberrypi-linux
et le modifier.
Compilation
Nous devons d'abord déplacer le fichier de configuration en exécutant
cp arch/arm/configs/bcmrpi_cutdown_defconfig .config
Configurez ensuite la construction du noyau
make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- oldconfig
Facultatif: personnalisez la génération à l'aide de menuconfig
make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- menuconfig
Exécutez ensuite la compilation
make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- -k
Les références
make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- -k
Je pense qu'Alex a raison mais le gcc-arm-linux-gnueabi est compilé pour les processeurs de bras sans unité matérielle à virgule flottante. Vous pouvez trouver un compilateur croisé avec le support armhf sur: https://github.com/raspberrypi/tools et un bon tutoriel pour commencer ici: http://hertaville.com/2012/09/28/development-environment- raspberry-pi-cross-compiler /
la source
Documentation officielle
https://www.raspberrypi.org/documentation/linux/kernel/building.md ( GitHub )
Je vous recommande de suivre les étapes ci-dessous ou d'envoyer une demande d'extraction si quelque chose devient obsolète ou n'est pas assez clair: ces instructions sont les plus susceptibles d'être correctes et à jour car elles font partie de la documentation officielle du projet.
la source