|
|
Line 1: |
Line 1: |
− | Vedere anche [[Getting OpenMoko working on host with Xephyr/it|Far funzionare OpenMoko su host con Xephyr]], è probabile che contenga informazioni più aggiornate.
| + | #REDIRECT [[Host-based development with Xoo and Xephyr/it]] |
− | | + | |
− | == Cosa è Xoo ==
| + | |
− | [http://projects.o-hand.com/xoo/ Xoo] è un wrapper per Server X annidati, basato su GTK2. Tipicamente, il Server X è '''Xnest''', il Server X annidato, o [http://projects.o-hand.com/xephyr Xephyr]. Si rivolge a sviluppatori di sistemi embedded che hanno bisogno di simulare device particolari (con dimensioni del display '''accurate''', tasti hardware, etc) su macchine desktop.
| + | |
− | | + | |
− | Attualmente, viene trattato solo come far funzionare Xoo con '''Xnest'''. Sono comunque pianificate istruzioni per far funzionare Xoo con [http://projects.o-hand.com/xephyr Xephyr].
| + | |
− | | + | |
− | ''Xoo non è necessario per simulare l'hardware OpenMoko - semplicemente migliora la presentazione''
| + | |
− | | + | |
− | == Installare Xoo sul proprio host ==
| + | |
− | Per gli utenti gentoo, eseguire
| + | |
− | # emerge xoo
| + | |
− | Debian/Ubuntu
| + | |
− | # sudo apt-get install xoo xnest
| + | |
− | Per Fedora (il pacchetto è stato inviato a Fedora per l'approvazione, vedere https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=236297):
| + | |
− | # ftp://ftp.xelerance.com/xoo/
| + | |
− | | + | |
− | Per gli altri, trovare un modo per farlo con la propria distro.
| + | |
− | | + | |
− | == Creare l'immagine OpenMoko (ottenere rootfs) ==
| + | |
− | Prima di tutto, bisogna creare una openmoko-devel-image e ottenere la directory rootfs. Un buon metodo è fare in modo che rootfs sia adatta alla macchina host visto che la maggior parte di noi non ha l'hardware giusto.
| + | |
− | | + | |
− | Per creare una openmoko-devel-image per la propria architettura, seguire [[MokoMakefile/it|Creare OpenMoko usando MokoMakefile]].
| + | |
− | | + | |
− | Prima di eseguire make openmoko-devel-image ed ottenere rootfs (prima del passo 5) eseguire:
| + | |
− | # sed -i 's/fic-gta01/x86/' build/conf/local.conf
| + | |
− | ed eseguire make openmoko-devel-image. Dopo parecchio tempo ('''parecchio''' tempo) dovrebbe terminare con successo.
| + | |
− | | + | |
− | Potrebbe essere necessario aggiungere
| + | |
− | TARGET_FPU = ""
| + | |
− | al file build/conf/local.conf per evitare l'errore:
| + | |
− | NOTE: <type 'exceptions.Exception'>:variable TARGET_FPU references itself! while evaluating:${TARGET_FPU}
| + | |
− | | + | |
− | === Problemi di compilazione ===
| + | |
− | | + | |
− | [http://bugzilla.openmoko.org/cgi-bin/bugzilla/show_bug.cgi?id=264 Vedere questo bug tracker] se si verificano problemi durante la compilazione di libelf (do_stage fallisce).
| + | |
− | | + | |
− | == Configurazione Filesystem dell'immagine ==
| + | |
− | Il filesystem dell'immagine che vogliamo eseguire in ambiente chroot può essere trovato in build/tmp/rootfs .
| + | |
− | | + | |
− | Questa immagine può anche essere compressa come file openmoko-devel-image-x86-$(DATE).rootfs.tar.gz in build/tmp/image/ - la mia è qui [http://www.ms.mff.cuni.cz/~kupem6am/openmoko-devel-image-x86-20070227064250.rootfs.tar.gz].
| + | |
− | | + | |
− | === Cooperare con X ===
| + | |
− | * Assicurarsi che iptables non blocchi le connessioni alla porta 6000(x11) di localhost
| + | |
− | | + | |
− | * Assicurarsi che X sia in ascolto sulla porta 6000(x11) di localhost (netstat è tuo amico)
| + | |
− | | + | |
− | * Abilitare le connessioni da localhost
| + | |
− | # xhost localhost
| + | |
− | | + | |
− | === Preparare rootfs ===
| + | |
− | Scompattare il file rootfs e copiare il contenuto in una directory chiamata /home/moko/mokobox. Questa sarà il nostro ambiente chroot.
| + | |
− | | + | |
− | Assicurarsi che /dev della macchina host sia visibile dall'ambiente chroot
| + | |
− | # sudo mount --bind /dev/ /home/moko/mokobox/dev
| + | |
− | | + | |
− | Avviare l'ambiente protetto mokobox
| + | |
− | # sudo chroot /home/moko/mokobox /bin/sh
| + | |
− | | + | |
− | == Avviare il server X annidato ==
| + | |
− | === Avviare Xoo ===
| + | |
− | In un terminale diverso (non legato al chroot mokobox), avviare Xoo. Scaricare
| + | |
− | [http://www.datenfreihafen.org/~stefan/OpenMoko/neo1973-xoo-device.tar.bz2] ed eseguire per un tema neo 1973 carino.
| + | |
− | # xoo --device neo1973.xml
| + | |
− | | + | |
− | === Avviare il client X ===
| + | |
− | Tornare nell'ambiente chroot, avviare il client X: <br /><br />
| + | |
− | Esportare la variabile display
| + | |
− | # export DISPLAY=localhost:1.0
| + | |
− | Avviare il window manager.
| + | |
− | # x-window-manager
| + | |
− | Da questo momento dovresti avere Xnest & Xoo che eseguono OpenMoko in una finestra.
| + | |
− | | + | |
− | <span id="bottom"></span>
| + | |
− | {{Languages|Templates}}
| + | |