ARM

Da Wiki :: openmamba.
Jump to navigation Jump to search

openmamba su ARM

L'architettura ARM è attualmente supportata in openmamba attraverso un apposito kit di sviluppo (sdk) che può essere scaricato dalla home page del sito principale.

La distribuzione sdk consiste in un archivio contenente un filesystem di root, un kernel compatible per l'architettura ARM VersatilePB da utilizzare con l'eemulatore qemu in modalità di sistema, e l'emulatore in modalità utente qemu.

Installazione ambiente in emulazione sul PC

Occorre creare un'apposita cartella nel filesystem del sistema ospite (tipicamente un PC) nel quale verrà scompattato l'archivio di openmamba sdk. Per l'accesso al sistema in modalità chroot è possibile scegliere una cartella qualunque, ma esiste un percorso speciale che qemu utilizza per trovare il loader dinamico e le librerie quando si esegue, anche senza aver effettuato il chroot, un binario per un'architettura differente da quella del sistema ospite. Tale cartella per l'architettura ARM è /usr/gnemul/qemu-arm, pertanto la procedura da utilizzare è la seguente (sostituire il percorso dell'archivio con quello disponibile):

mkdir /usr/gnemul/qemu-arm
cd /usr/gnemul/qemu-arm
tar xzf /tmp/openmamba-sdk-root-en-snapshot-20100822.arm.tar.gz

Installazione ambiente di cross-compilazione sul PC

In alternativa è anche possibile effettuare l'installazione di una cross-toolchain per lo sviluppo. Partire installando i pacchetti necessari eseguendo il seguente comando:

sudo smart install cross-arm-openmamba-linux-gnueabi-environment \
cross-arm-openmamba-linux-gnueabi-binutils cross-arm-openmamba-linux-gnueabi-gcc \
cross-arm-openmamba-linux-gnueabi-glibc

Viene installato un ambiente di sviluppo a partire dal percorso /usr/arm-openmamba-linux-gnueabi e dei link simbolici nel percorso di sistema per i tool della cross-toolchain. E' quindi possibile eseguire il compilatore con il comando

arm-openmamba-linux-gnueabi-gcc

Analogamente gli altri comandi della cross-toolchain sono disponibili anteponendo arm-openmamba-linux-gnueabi- al nome del comando.

L'ambiente per la cross-compilazione contiene un database RPM per l'installazione di librerie e tool in formato RPM per ARM.

Per installare un pacchetto RPM eseguire il comando seguente, in questo esempio si suppone di installare la libreria libxml2 con i file per lo sviluppo:

rpm -r /usr/arm-openmamba-linux-gnueabi -i libxml2-2.7.7-2mamba.i586.rpm \
libxml2-devel-2.7.7-2mamba.i586.rpm

I pacchetti RPM per ARM sono attualmente disponibili nel repository devel.

Per visualizzare l'elenco dei pacchetti installati digitare:

rpm -r /usr/arm-openmamba-linux-gnueabi -qa