[GUIDA] Compilazione dei sorgenti [1010i]
Passi preliminari:
1) Distribuzione linux
Consiglio linux mint/ubuntu/debian
2) toolchain
La toolchain usata in questa guida (usata per compilare il kernel sia della protab che cyanbook) è “Sourcery CodeBench for ARM GNU/Linux Lite" reperibile a questo indirizzo:
http://www.codesourcery.com/sgpp/lit...ux-gnueabi.bin
Copia il file scaricato in home per convenienza.
Per installarla digitare da terminale nella cartella home con i permessi di root:
codice:
sudo ./arm-2010.09-50-arm-none-linux-gnueabi.bin
3) Sorgenti del kernel a10:
https://github.com/linux-sunxi/linux-sunxi
da terminale (nella cartella home sempre per convenienza) digitare
codice:
git clone git://github.com/linux-sunxi/linux-sunxi
passare al branch stage/sunxi-3.0 se si vogliono i sorgenti anche per l'8188eu
sempre da terminale (nella cartella home sempre per convenienza) digitare
codice:
cd linux-sunxi
git checkout stage/sunxi-3.0
Ora che sul computer si ha il toolchain e i sorgenti si passa alla configurazione e compilazione:
Per cambiare versione vermagic bisogna editare il file makefile e modificare le stringhe
VERSION =
PATCHLEVEL =
SUBLEVEL =
EXTRAVERSION =
Per modificare il modversion editare il file /arch/arm/configs/sun4i_crane_defconfig alla voce CONFIG_MODVERSIONS
con CONFIG_MODVERSIONS=n la voce modversion non compare nel vermagic
CONFIGURAZIONE:
sempre nella cartella linux-sunxi
Per impostare il file di configurazione digitare da terminale:
codice:
make ARCH=arm sun4i_crane_defconfig
(sun4i_crane_defconfig è la configurazione per android, mentre sun4i_defconfig per linux)
adesso digitare:
sempre nella cartella linux-sunxi
codice:
make menuconfig ARCH=arm
per entrare nel menu di configurazione testuale di tutte le impostazioni del kernel.
Per esempio se vuoi abilitare come modulo aggiuntivo l'8188eu bisogna andare in Device Drivers/Network device support/Wireless LAN/ e in fondo ci sarà la voce Realtek 8188E USB WiFi da selezionare come M.
A fine modifiche salvare il file di configurazione
COMPILAZIONE
Infine per effetture la compilazione dei moduli
creare una cartella chiamata compilati in linux-sunxi e poi digitare da terminale sempre nella cartella linux-sunxi:
sudo make ARCH=arm CROSS_COMPILE=/root/CodeSourcery/Sourcery_G++_Lite/bin/arm-none-linux-gnueabi- INSTALL_MOD_PATH=~/linux-sunxi/compilati modules
e poi
sudo make ARCH=arm CROSS_COMPILE=/root/CodeSourcery/Sourcery_G++_Lite/bin/arm-none-linux-gnueabi- INSTALL_MOD_PATH=~/linux-sunxi/compilati modules_install
se tutto è andato bene senza errori (all'inizio qualcuno potrebbe anche esserci, per esempio per qualche libreria mancante) troverete i nuovi moduli nella cartella ~/linux-sunxi/compilati