Comment compiler de manière croisée le noyau sur un hôte Ubuntu?

16

Je voudrais en savoir plus sur le fonctionnement du noyau. Cela consiste en partie à le compiler moi-même. Comment compiler de manière croisée le noyau sur un hôte Ubuntu?

Alex Chamberlain
la source

Réponses:

24

Préparation

Tout d'abord, nous devons installer les prérequis requis. Je suppose que vous y avez sudoaccè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.
  • ncursesest 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-linuxet 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
Alex Chamberlain
la source
1
Merci beaucoup d'avoir fourni une alternative à l'utilisation de crosstool-ng .
earthmeLon
Dans mon cas CROSS_COMPILE n'est qu'un préfixe, donc le suivi devrait suffire (sans gcc à la fin): make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- -k
danger89
0

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.

Ciro Santilli 新疆 改造 中心 法轮功 六四 事件
la source