Nach etwas Gebastel und Lesen von Mailing Listen habe ich nun SWT zum Laufen gebracht. Meine Meilensteine ändern sich nun wie folgend:
- Yoxos: Ist nun wieder Online, ich habe aber Eclipse noch nicht richtig im Einsatz. Das kommt nun mehr ins Spiel.
- Java 1.5: DONE, siehe http://hexor2k.wordpress.com/2008/12/27/erster-status/
- Equinox: DONE, siehe http://hexor2k.wordpress.com/2008/12/27/erster-status/
- SWT: Läuft nun, man muss folgende Punkte durchführen:
- Zuerst müssen die OPKG-Quellen so wie hier beschrieben angepasst werden. Die Pakete libswt3.4-gtk-java und libswt3.4-gtk-jni sollten installiert sein.
- Auf dem Buildrechner das SWT-Programm (ich hab das Beispiel von der Jalimo-Homepage verwendet) bauen mit folgendem Kommando: javac -cp /usr/share/java/swt.jar Sample1.java. Der Pfad und der Name von swt.jar kann je nach Distribution variieren, z.B. /usr/lib als Pfad oder swt-gtk.jar bzw. swt-gtk3.4.jar als Name.
- Das Programm muss nun auf den Zielrechner kopiert und mit folgendem Kommando gestartet werden: java -cp /usr/share/java/swt.jar:/usr/lib/jni:. Sample1. Auch hier können Pfade und Namen variieren, die von mir Gewählten gelten für das aktuelle FDOM Image. Der Startbefehl von der Jalimo-Homepage funktioniert nicht, da hier nur die swt.jar auf dem Classpath gesetzt wird und nicht das aktuelle Verzeichnis.
Sollte man den Fehler „Exception in thread „main“ org.eclipse.swt.SWTError: No more handles [gtk_init_check() failed]“ erhalten so muss man noch „export DISPLAY=:0“ ausführen, dann geht es.
Erhält man „Exception in thread „main“ java.lang.UnsatisfiedLinkError: no swt-gtk-3448 or swt-gtk in swt.library.path, java.library.path or the jar file„, so konnte die native SWT-Bibliothek nicht gefunden werden. Diese sollte eigentlich im Pfad /usr/lib/jni liegen. Ihr Name ist libswt-gtk-3448.so. - Diesen Punkt möchte ich nun auch als DONE bezeichnen
- eRCP: Unverändert, niedrige Priorität.
- ANT-Skripte, Deployment: Nächster Punkt.
- Accelerometer: Nicht begonnen.
- Anwendungs-Architektur: Nicht begonnen.
- Anwendung: Nicht begonnen.
Nachdem jetzt die Funktionalitäten getestet sind, werde ich mich nun auf Eclipse stürzen um diese auf die Openmoko-Entwicklung anzupassen. Dazu kommen jetzt auch die Skripte für Deployment ins Spiel.