Differenze tra le versioni di "A10-OLinuXino-LIME"
(17 versioni intermedie di 2 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
= Introduzione = | = Introduzione = | ||
− | A10-OLinuXino-LIME è un mini computer | + | [https://www.olimex.com/wiki/A10-OLinuXino-LIME A10-OLinuXino-LIME] è un mini computer ARM prodotto dalla Olimex. |
− | + | [http://linux-sunxi.org/A10 Specifiche] | |
− | |||
− | + | == Sistemi Operativi Supportati == | |
− | |||
− | + | * Linux | |
+ | ** [https://www.olimex.com/wiki/A10-OLinuXino-LIME#Linux Immagine Debian ufficiale] | ||
+ | ** [http://linux-sunxi.org/Category:Linux_Distributions Altre distribuzioni supportate] | ||
+ | |||
+ | * Android | ||
+ | ** [http://linux-sunxi.org/Boot_Android_from_SdCard Istruzioni per realizzare l'immagine Android] | ||
+ | ** [https://www.olimex.com/wiki/A10-OLinuXino-LIME#Android Immagine ufficiale] | ||
+ | |||
+ | * OpenBSD | ||
+ | [http://openbsd.mirror.garr.it/pub/OpenBSD/snapshots/armv7/miniroot-sunxi-55.fs Link diretto] | ||
− | + | = Preparazione dell'immagine Linux per la microSD = | |
− | |||
− | + | Si consiglia di utilizzare l'immagine ufficiale (Debian 7.3 con Kernel 3.4.x). | |
+ | [https://docs.google.com/file/d/0B-bAEPML8fwlZWMtZHZCNVNoYTQ/edit Download] | ||
− | + | Decomprimere l'immagine col seguente comando | |
+ | # 7z x a10_Lime_debian_second_release.7z | ||
+ | ''(Se non presente sul sistema installare il programma p7zip)'' | ||
− | + | Copiare l'immagine appena creata su una miniSD da almeno 4 GB | |
− | + | # dd if=a10_Lime_debian_second_release.img of=/dev/sdx | |
+ | ''(sostituire /dev/sdx col nome del device corrispondente)'' | ||
− | + | = Ricompilazione del kernel = | |
+ | Il kernel presente sull'immagine Debian fornita dalla Olimex manca del firewall e di parecchi driver, praticamente supporta solo le periferiche vendute dalla casa produttrice. | ||
− | + | == Scaricare i sorgenti == | |
− | + | # git clone https://github.com/linux-sunxi/linux-sunxi | |
− | = | + | == Configurazione == |
− | + | === Caricamento di una configurazione funzionante === | |
− | http:// | + | Si consiglia di copiare il file nella directory linux-sunxi/ e rinominarlo come ''.config'' |
+ | * [http://golem.linux.it/files/officina/serverino/paladini/a10lime_defconfig_GOLEM '''a10lime_defconfig_GOLEM'''] Versione Debian 7 Wheezy, in via Paladini | ||
+ | * [http://golem.linux.it/files/officina/serverino/avane-2016-12/a10lime_defconfig_GOLEM_avane_2016_12 '''a10lime_defconfig_GOLEM_avane_2016_12'''] Versione Debian 8 Jessie con systemd, Avane (dicembre 2016) | ||
− | + | === Configurazione manuale === | |
+ | # make ARCH=arm menuconfig | ||
+ | == Cross compilazione == | ||
+ | Tecnicamente è possibile compilare un nuovo kernel direttamente su OLinuXino, ma se si dispone di un moderno PC multicore sarà preferibile cross-compilarlo. | ||
+ | '''Attenzione - 2016''' | ||
+ | Le distribuzioni più recenti includono nuove versioni di gcc che non riescono a compilare il kernel. | ||
+ | Usare gcc Debian 7 o Ubuntu 14.04. Compilato con successo con ''gcc 4.8''. | ||
− | + | Se si desidera utilizzare il sistema ''Debian 8 Jessie'' con ''systemd'', è necessario ricompilare il kernel avendo l'accortezza di abilitare: | |
− | + | CONFIG_INOTIFY_USER=y | |
+ | CONFIG_SIGNALFD=y | ||
+ | CONFIG_FHANDLE=y | ||
+ | CONFIG_TIMERFS=y | ||
+ | CONFIG_EPOLL=y | ||
− | + | === Installazione dei programmi=== | |
+ | Su Arch Linux installate da AUR | ||
arm-linux-gnueabihf-binutils | arm-linux-gnueabihf-binutils | ||
arm-linux-gnueabihf-eglibc | arm-linux-gnueabihf-eglibc | ||
arm-linux-gnueabihf-gcc | arm-linux-gnueabihf-gcc | ||
arm-linux-gnueabihf-linux-api-headers | arm-linux-gnueabihf-linux-api-headers | ||
+ | ''(Es.: # yaourt -S arm-linux-gnueabihf-binutils)'' | ||
− | + | Su Debian | |
+ | # apt-get install mlton-runtime-arm-linux-gnueabihf | ||
+ | |||
+ | == Compilazione == | ||
+ | Compilazione dell'immagine del kernel | ||
make -C ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 uImage | make -C ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 uImage | ||
+ | |||
+ | Compilazione dei moduli | ||
make -C ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 modules | make -C ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 modules | ||
− | + | Preparazione di una directory dove installare i moduli da copiare sulla microSD | |
− | export INSTALL_MOD_PATH=$PWD/ | + | (es.: una sottodirectory dal nome ''moduli'' della cartella dei sorgenti del kernel) |
+ | export INSTALL_MOD_PATH=$PWD/moduli/ | ||
make -C ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 modules_install | make -C ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 modules_install | ||
− | + | == Copia dei file su OLinuXino == | |
− | + | * Kernel: montare la piccola partizione da 16 MB vfat e sostituire la vecchia immagine con la nuova '''linux-sunxi/arch/arm/boot/uImage''' | |
− | + | # cp arch/arm/boot/uImage /mnt/olinuxino_vfat/ ''Esempio'' | |
+ | |||
+ | * Moduli: montare la partizione più grande e copiare la directory linux-sunxi/moduli/''3.4.xx''/lib/modules in /lib/modules/ | ||
+ | # cp -r linux-sunxi/moduli/''3.4.xx''/lib/modules/ /mnt/olinuxino/lib/modules ''Esempio'' | ||
− | + | [[Category:Howto]] | |
− | |||
− |
Versione attuale delle 21:43, 8 dic 2016
Introduzione
A10-OLinuXino-LIME è un mini computer ARM prodotto dalla Olimex.
Sistemi Operativi Supportati
- OpenBSD
Preparazione dell'immagine Linux per la microSD
Si consiglia di utilizzare l'immagine ufficiale (Debian 7.3 con Kernel 3.4.x). Download
Decomprimere l'immagine col seguente comando
# 7z x a10_Lime_debian_second_release.7z
(Se non presente sul sistema installare il programma p7zip)
Copiare l'immagine appena creata su una miniSD da almeno 4 GB
# dd if=a10_Lime_debian_second_release.img of=/dev/sdx
(sostituire /dev/sdx col nome del device corrispondente)
Ricompilazione del kernel
Il kernel presente sull'immagine Debian fornita dalla Olimex manca del firewall e di parecchi driver, praticamente supporta solo le periferiche vendute dalla casa produttrice.
Scaricare i sorgenti
# git clone https://github.com/linux-sunxi/linux-sunxi
Configurazione
Caricamento di una configurazione funzionante
Si consiglia di copiare il file nella directory linux-sunxi/ e rinominarlo come .config
- a10lime_defconfig_GOLEM Versione Debian 7 Wheezy, in via Paladini
- a10lime_defconfig_GOLEM_avane_2016_12 Versione Debian 8 Jessie con systemd, Avane (dicembre 2016)
Configurazione manuale
# make ARCH=arm menuconfig
Cross compilazione
Tecnicamente è possibile compilare un nuovo kernel direttamente su OLinuXino, ma se si dispone di un moderno PC multicore sarà preferibile cross-compilarlo.
Attenzione - 2016 Le distribuzioni più recenti includono nuove versioni di gcc che non riescono a compilare il kernel. Usare gcc Debian 7 o Ubuntu 14.04. Compilato con successo con gcc 4.8.
Se si desidera utilizzare il sistema Debian 8 Jessie con systemd, è necessario ricompilare il kernel avendo l'accortezza di abilitare:
CONFIG_INOTIFY_USER=y CONFIG_SIGNALFD=y CONFIG_FHANDLE=y CONFIG_TIMERFS=y CONFIG_EPOLL=y
Installazione dei programmi
Su Arch Linux installate da AUR
arm-linux-gnueabihf-binutils arm-linux-gnueabihf-eglibc arm-linux-gnueabihf-gcc arm-linux-gnueabihf-linux-api-headers
(Es.: # yaourt -S arm-linux-gnueabihf-binutils)
Su Debian
# apt-get install mlton-runtime-arm-linux-gnueabihf
Compilazione
Compilazione dell'immagine del kernel
make -C ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 uImage
Compilazione dei moduli
make -C ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 modules
Preparazione di una directory dove installare i moduli da copiare sulla microSD (es.: una sottodirectory dal nome moduli della cartella dei sorgenti del kernel)
export INSTALL_MOD_PATH=$PWD/moduli/ make -C ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 modules_install
Copia dei file su OLinuXino
- Kernel: montare la piccola partizione da 16 MB vfat e sostituire la vecchia immagine con la nuova linux-sunxi/arch/arm/boot/uImage
# cp arch/arm/boot/uImage /mnt/olinuxino_vfat/ Esempio
- Moduli: montare la partizione più grande e copiare la directory linux-sunxi/moduli/3.4.xx/lib/modules in /lib/modules/
# cp -r linux-sunxi/moduli/3.4.xx/lib/modules/ /mnt/olinuxino/lib/modules Esempio