CrossCompiling ARM per C.H.I.P. 9$ computer

Per prima cosa bisogna soddisfare alcuni prerequisiti:

sudo apt-get install git ncurses-dev make gcc-arm-linux-gnueabi

git il sistema di controllo di versione del team di sviluppo del kernel
ncurses una libreria testuale usata da menuconfig
make make…
gcc-arm-linux-gnueabi il cross compiler

recuperiamo il codice sorgente del kernel che vogliamo compilare

versione kernel 4.3

git clone --single-branch --branch debian/4.3.0-ntc-4 --depth 1 https://github.com/NextThingCo/CHIP-linux.git

version kernel 4.4

git clone --single-branch --branch debian/4.4.11-ntc-1 --depth 1 https://github.com/NextThingCo/CHIP-linux.git

il comando clonerà tutto il contenuto del repository ufficiale in una directory chiamata CHIP-linux.

Il problema nasce dal contenuto di default del .config. Nel mio caso ho usato il file di configurazione di renzo:

mkdir /tmp/chiplinux4.3.0rd235+
pushd /tmp/chiplinux4.3.0rd235+
wget http://www.raspibo.org/renzo/chiplinux4.3.0rd235+.tgz
tar zxf chiplinux4.3.0rd235+.tgz
popd
cp /tmp/chiplinux4.3.0rd235+/boot/config-4.3.0rd235+ .config

A questo punto configuriamo il kernel

make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- oldconfig

eventualmente mofichiamo la configurazione con menuconfig

make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- menuconfig

e lanciamo la compilazione

make ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi- -k

sul piccolo chip servono oltre tre ore, ma con un semplice make: una volta crosscompilato, spostiamo tutta la directory /src/CHIP-linux dal computer al chip.

L’installazione si completa con

sudo make INSTALL_FW_PATH=/lib/firmware/new modules_install

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.