Maemo 5 SDK Installation unter 64bit: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 54: | Zeile 54: | ||
/scratchbox/sbox_ctl restart | /scratchbox/sbox_ctl restart | ||
Nun bekommt man durch starten des Scripts in einem Terminal | |||
/usr/local/bin/start_xephyr.sh | /usr/local/bin/start_xephyr.sh | ||
ein Maemo5 System in einem Fenster. | |||
Will man jetzt ein Programm Compilieren kann man einfach noch ein neues Terminal öffnen und sich dort in die scratchbox einloggen durch ausführen von | Will man jetzt ein Programm Compilieren kann man einfach noch ein neues Terminal öffnen und sich dort in die scratchbox einloggen durch ausführen von |
Version vom 10. April 2010, 18:55 Uhr
Scratchbox ist die cross compile Umgebung die das Maemo 5 SDK benutzt um z.b. für das N900 Handy zu Programmieren. Die Installation ist eigentlich recht einfach jedoch gibt es kleine hürden für 64bit arch Systeme da es nur 32 bit supported.
Installation
Als erstes müssen wir im Kernel vdso32 auf 0 setzen sonst bricht schon der Installer mit Fehlermeldungen ab, dies geht per Kernel Boot Command Line mit vdso32=0, wer aber nicht an grub rumfummeln will (never touch a booting grub ;) für den gibt es eine Alternative. Es ein sehr kleines Kernel Module das diesen wert in runtime setzten kann und ihn danach auch wieder zurück setzt. den code bekommt man von dieser Seite unter dem Link Kernel Module: http://www.ipi.fi/~pablo/
Das makefile funktionier so leider noch nicht mit Arch das der Pfad zum /boot/System.map26 falsch generiert wird (falls ihr eine andere Kernel hab schaut bitte nach wie die endung bei euch ist).
Hierfür muss man in dieser Ziele nur das -$(KERNEL_VERSION) dur 26 ersetzten:
CFLAGS_vdso_disable.o = -DVDSO32_ADDR=0x$(shell grep sysctl_vsyscall32 /boot/System.map-$(KERNEL_VERSION)|cut -f 1 -d ' ')
so das dann:
CFLAGS_vdso_disable.o = -DVDSO32_ADDR=0x$(shell grep sysctl_vsyscall32 /boot/System.map26 |cut -f 1 -d ' ')
nun könnt ihr das modul mit
make
Kompilieren und anschliesend mit
insmod vdso_disable.ko
laden und mit
rmmod vdso_disable.ko
nach arbeiten mit dem SDK / installer wieder beenden.
natürlich steht es jedem frei das Module richtig zu installieren und in seine rc.conf einzutragen so dass man insmod nicht vergisst.
Nun können wir die Installation mit dem GUI tool beginnen wofür man am Internet sein muss da dieser einiges herunterläd.
wget http://repository.maemo.org/stable/5.0/maemo-sdk-install-wizard_5.0.py chmod a+x maemo-sdk-install-wizard_5.0.py
und mit root rechten dann ausführen da es einen ordner /scratchbox anlegen will
sudo ./maemo-sdk-install-wizard_5.0.py
Nun sind wir fast fertig, jedoch führte das Script auf das auch die vom Installer erzeugte Desktop Verknüpfung zeigt /usr/local/bin/start_xephyr.sh bei mir zu einem Fehler Xrphyr kannte die parameter -kb nicht daher habe ich sie kurzerhand entfernt und alles hat funktioniert, also einfach in der datei:
/usr/local/bin/start_xephyr.sh
Diese Zeile:
(Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac -kb; newgrp sbox <<'END'
zu
(Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac; newgrp sbox <<'END'
ändern.
Entwicklung
Fals man nach der Installation Neugestartet hat muss man erst ein Script ausführen um scratchbox zu starten, da es einige mounts ins seinem Verzeichniss benötig und sonst der start mit Fehlern abbricht.
/scratchbox/sbox_ctl restart
Nun bekommt man durch starten des Scripts in einem Terminal
/usr/local/bin/start_xephyr.sh
ein Maemo5 System in einem Fenster.
Will man jetzt ein Programm Compilieren kann man einfach noch ein neues Terminal öffnen und sich dort in die scratchbox einloggen durch ausführen von
/scratchbox/login
hier kann man nun durch nano gcc ect seine programme bearbeiten und compileren und direkt ausführen, grafisch starten die dann automaitsch in dem Maemo 5 fenster.
Auserdem kann man Dateien die man in den Ordner
MyDocs
kopiert von dem File manager im root verzeichniss / sehen (durch ein click auf das handy icon).
wer nicht nur mit nano arbeiten will kann natürlich unter seinem Desktop alles Editieren und dann die Dateien in MyDocs kopieren um sie zu Kompilieren, der ordner befindet sich unter:
/scratchbox/users/<dein username>/home/<dein username>/MyDocs
viel spass mit dem rumspielen und Entwickeln für Maemo 5.