• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

CW und Freerunner

*Nabend,

hat eigentlich schon jemand überprüft, ob CW auf dem FreeRunner(OpenMOKO) Smartphone, welches am Wochenende auf den Markt gekommen ist, laufen wird?

ich finde leider keine aktuellen Berichte, was das Teil momentan alles kann.

Gruß Frank
 

2cachefix

Geomaster
ich glaube nicht, dass das schon jemand testen konnte wenn das Teil erst am Wochenende auf den Markt gekommen ist. Schau mal hier http://www.cachewolf.de/wiki/pmwiki.php. Hier findest Du was benötigt wird um Cachewolf zu nutzen.
 

Bilbowolf

Geowizard
Dem Openmoko schiele ich schon einiger Zeit "hinterher".

Insgesamt sollen wohl drei verschiedene J2SE auf dem Ding laufen: http://wiki.openmoko.org/wiki/Java

Ob die aber inzwischen wirklich implementiert sind, habe ich keine Ahnung. Theoretisch wird CW laufen...
 

bubbas

Geonewbie
hi,

ich habe es mit jalimo (https://wiki.evolvis.org/jalimo/index.php/Main_Page) versucht. Leider ohne Erfolg. Bekomme folgende Fehlermeldung
Code:
Exception in thread "main" java.lang.NoClassDefFoundError: ewe/sys/Vm
   at ewe.ui.Gui.<clinit>(Gui.java)
   at ewe.applet.Applet.init(Applet.java)
   at ewe.applet.Applet.main(Applet.java)

lg

bubbas
 

mirabilos

Geocacher
http://www.mirbsd.org/MirOS/dist/hosted/other/ewe-1.49mb4.tar.gz

Kompilieren ist nicht ganz straight-forward. Du wirst vermutlich zuerst
http://www.mirbsd.org/MirOS/dist/mir/mksh/mksh-R35b.cpio.gz
und
http://www.mirbsd.org/MirOS/dist/mir/make/mirmake-20080411.cpio.gz
kompilieren und installieren müssen, dann GTK+2 (und libz und libjpeg
und pkg-config) inklusive Development-Headern, dann sollten folgende
Befehle tun:
Code:
$ PREFIX=/usr/local; export PREFIX   # ändern falls gewünscht
$ tar xzf ewe-1.49mb4.tar.gz
$ cd ewe/vm/gtk2      # oder ewe/vm/noembed_gtk2
$ bmake obj && bmake depend && bmake all
$ (cd ../..; bmake beforeinstall)
$ bmake install

Achja, das alles wird dann nativ kompiliert… cross-compilation
könnte mit viel Glück und Rumgewurschtl auch gehen, nur wie…?

Sponsor mir ein Freerunner, und ich bastel Dir fertige Binärpakete ?

Viel Glück!
 

bubbas

Geonewbie
hi vielen Dank für deine Antwort.

Ich habe nun versucht deiner Anleitung zu folgen. Allerdings habe ich schon die ersten Probleme:

Nach dem Entpacken von dem mksh und dann ausführen von Build.sh bekomme ich
Code:
./Build.sh 
Hi from $MirOS: src/bin/mksh/Build.sh,v 1.349 2008/07/18 11:42:52 tg Exp $ on:
$ uname -a >&2
| Linux om-gta02 2.6.24 #1 PREEMPT Thu Aug 7 01:59:29 CEST 2008 armv4tl unknown
Build.sh: Building the MirBSD Korn Shell R35 2008/07/18
Build.sh: Scanning for functions... please ignore any errors.
... which compiler seems to be used
$ cc -E scn.c | grep ct= | tr -d \\015 >x
] cc: error trying to exec 'cc1': execvp: No such file or directory
==> which compiler seems to be used... unknown
... if the compiler works
$ cc   -I.  -D_GNU_SOURCE   scn.c  || rm -f ${tcfn}*
] cc: error trying to exec 'cc1': execvp: No such file or directory
==> if the compiler works... no
gcc, g++, symlinks usw. habe ich installiert auf dem openmoko

auch mit dem mirmake habe ich leider Probleme:
Code:
 ./Build.sh 
Error: cannot guess machine or machine_arch
Your uname -a output is:
Linux om-gta02 2.6.24 #1 PREEMPT Thu Aug 7 01:59:29 CEST 2008 armv4tl unknown
Syntax:
 ./Build.sh <OStype> [<prefix> [<manpath> [<exename>
	[<machine> [<machine_arch> [<machine_os>
  [<mksh> [<binown>:<bingrp>]]]]]]]]
OStype:  name of OS (eg. Debian)
prefix:  installation target (default: /usr/local)
manpath: manpath relative to <prefix> (default: man/cat)
exename: name of executable to generate (default: bmake)
<machine> and <machine_arch> describe the target machine
and are guessed from machine='armv4tl' and
machine_arch='unknown' respectively.
Possible values: (i386, i386), (macppc, powerpc), etc.
<machine_os> can currently only be: BSD Darwin Interix Linux
If <manpath> contains the string 'cat', a catmanpage is
generated and installed, else, an unformatted manpage
will be installed. If <mksh> is given, it is searched
first when determining the path of the mirbsdksh.
Default binary owner is root:bin
root@om-gta02:~/ewe/mirmake# ./Build.sh Openmoko
Error: cannot guess machine or machine_arch
Your uname -a output is:
Linux om-gta02 2.6.24 #1 PREEMPT Thu Aug 7 01:59:29 CEST 2008 armv4tl unknown
Syntax:
 ./Build.sh <OStype> [<prefix> [<manpath> [<exename>
	[<machine> [<machine_arch> [<machine_os>
  [<mksh> [<binown>:<bingrp>]]]]]]]]
OStype:  name of OS (eg. Debian)
prefix:  installation target (default: /usr/local)
manpath: manpath relative to <prefix> (default: man/cat)
exename: name of executable to generate (default: bmake)
<machine> and <machine_arch> describe the target machine
and are guessed from machine='armv4tl' and
machine_arch='unknown' respectively.
Possible values: (i386, i386), (macppc, powerpc), etc.
<machine_os> can currently only be: BSD Darwin Interix Linux
If <manpath> contains the string 'cat', a catmanpage is
generated and installed, else, an unformatted manpage
will be installed. If <mksh> is given, it is searched
first when determining the path of the mirbsdksh.
Default binary owner is root:bin

der freerunner hat einen arm4 prozessor, was muss ich denn da wählen?

hoffe du kannst mir ein schrittchen weiterhelfen.

vielen dank im vorraus

bubbas
 

bubbas

Geonewbie
ich habs jetzt mal versucht unter ubuntu 8.04 64bit zu kompilieren. mksh und mirmake bekomme ich da kompiliert. Wenn ich dann aber das ewe probiere wie von dir beschrieben, kommt folgendes, nachdem ich mit "sudo bmake install" die Installation starten will:
Code:
/usr/local/share/doc/ewe//javadoc/tree.html
88655 blocks
cd /usr/local/share &&  chown -R root:bin {doc/,}ewe &&  find {doc/,}ewe -type d -print0 | xargs -0 chmod 755 &&  find {doc/,}ewe -type f -print0 | xargs -0 chmod 444
/usr/local/bin/binstall -c -o root -g bin -m 444  /home/vale/openmoko/tmp/ewe/ewe/ewe/eni/eni.h /usr/local/include/
cd /home/vale/openmoko/tmp/ewe/ewe/ewe/vm && exec bmake  install
===> cli
/usr/local/bin/binstall -c -s -o root -g bin  -m 555 ewecl /usr/local/bin/
===> gtk12
/usr/local/bin/binstall -c -s -o root -g bin  -m 555 ewe /usr/local/bin/
binstall: ewe: No such file or directory
*** Error code 71

Stop in /home/vale/openmoko/tmp/ewe/ewe/ewe/vm/gtk12 (line 100 of /usr/local/share/bmake/bsd.prog.mk).
*** Error code 1

Stop in /home/vale/openmoko/tmp/ewe/ewe/ewe/vm.
*** Error code 1

Stop in /home/vale/openmoko/tmp/ewe/ewe/ewe (line 92 of BSDmakefile).

das mit unter ubuntu kompilieren ist aber eigentlich nur ein test, damit ich sehe wie es generell mal durchläuft ;). ziel bleibt es auf dem freerunner hinzubekommen :)

hoffe du kannst mir weiter helfen, vielen dank schonmal

lg

bubbas
 

mirabilos

Geocacher
bubbas schrieb:
hi vielen Dank für deine Antwort.

Ich habe nun versucht deiner Anleitung zu folgen. Allerdings habe ich schon die ersten Probleme:

Okay, ich versuche dann mal, das aufzubröseln.

bubbas schrieb:
Code:
$ cc -E scn.c | grep ct= | tr -d \\015 >x
] cc: error trying to exec 'cc1': execvp: No such file or directory

gcc, g++, symlinks usw. habe ich installiert auf dem openmoko

Nein, cc (der C Compiler) funktioniert nicht. Oder mach mal
Code:
# env CC=gcc sh Build.sh -r
Vielleicht tuts, wenn man den gcc als gcc statt cc aufruft.
Ansonsten fehlt was in der Installation.

bubbas schrieb:
auch mit dem mirmake habe ich leider Probleme:

Probier mal:
Code:
# ./Build.sh "Openmoko" "" "" "" arm arm

mksh muß aber installiert sein (oder er baut sie selber nach).

bubbas schrieb:
ich habs jetzt mal versucht unter ubuntu 8.04 64bit zu kompilieren. mksh und mirmake bekomme ich da kompiliert. Wenn ich dann aber das ewe probiere wie von dir beschrieben, kommt folgendes, nachdem ich mit "sudo bmake install" die Installation starten will:

Das „bmake install“ in dem ewe/vm/gtk2 Verzeichnis starten, da Du ja nur die, und
nicht die CLI- und GTK+1.2-Versionen gebaut hast. Um den Rest zu kriegen reicht
ein „bmake beforeinstall“ im ewe-Hauptverzeichnis… denke ich.

Alternativ reicht es, wenn Du in ewe/vm/BSDmakefile alle außer gtk2 und ggf. cli
auskommentierst (also gtk12, makepool, und die noembed-Sachen).

Sorry, ich wollte eigentlich ein Debian-Paket davon machen (was dann auch auf
Ubuntu funktionieren würde), aber das lohnt sich ja nicht, wegen des Eve-Umstiegs.
Deshalb hab ichs erstmals nur für mich zum Bauen gebracht und halbwegs portabel
(MirBSD, Debian GNU/Linux, Mac). Sollte aber auch auf Ubuntu tun.

Sorry für die Reaktionszeit, ich guck eher selten in Webfora.
 

bubbas

Geonewbie
hey danke noch für die hilfe gestern abend!

ich habe jetzt mksh und mirmake kompiliert und installiert bekommen. ewe kompiliert auch soweit durch im vm/gtk2 verzeichnis. Wenn ich dann im Hauptverzeichnis bmake beforeinstall mache dann kommt irgendwann noch folgender Fehler:

Code:
/usr/local/share/doc/ewe//javadoc/resources/gjdochtml-clean-layout.css
/usr/local/share/doc/ewe//javadoc/resources/inherit.png
/usr/local/share/doc/ewe//javadoc/resources/xhtml11-target10.dtd
/usr/local/share/doc/ewe//javadoc/serialized-form.html
/usr/local/share/doc/ewe//javadoc/tree.html
88655 blocks
cd /usr/local/share &&  chown -R root:bin {doc/,}ewe &&  find {doc/,}ewe -type d -print0 | xargs -0 chmod 755 &&  find {doc/,}ewe -type f -print0 | xargs -0 chmod 444
/usr/local/bin/binstall -c -o root -g bin -m 444  /home/root/ewe/eni/eni.h /usr/local/include/
binstall: /usr/local/include/: Is a directory
*** Error code 71

Stop in /home/root/ewe (line 101 of BSDmakefile).

ich hab dann trotzdem noch bmake install gemacht und er installiert eweg2 nach /bin .

wenn ich dann im terminal auf dem openmoko

eweg2 Cachewolf.ewe im cachewolf Verzeichnis ausführe, dann bekomme ich ein segmentation fault. Wenn ichs über ssh starte bekomme ich dass er halt kein Display findet. Ich weiß jetzt nicht weiter: ist nun das eweg2 nicht richtig kompiliert oder fehlen ewe.ewe usw. ewecl, oder woran kann das liegen? ewe.ewe liegt unter /usr/local/share/ewe.ewe

Vielen Dank für deine Hilfe und Mühe.

lg

bubbas :)
 

bubbas

Geonewbie
hey,

ich wollte nur berichten, dass ich jetzt sehr nah dran bin. musste doch das orginal ewe nehmen und hab da ein paar sachen von deinem (mirabilos) mirewe abgeguckt damit es durchkompiliert.

auch vielen dank an GeoGroucho der mir am ende die entscheidenden tipps gegeben hat.

ich werde meine vorgehensweise so bald ich ein bisschen zeit habe hier schreiben und wenn ich es schaffe auch ein fertiges ipk zur installation anbieten.

aber es geht!!!

vielen dank euch beiden für die unterstützung!

bis bald

bubbas
 
OP
R

Rumplstielzchen

Geocacher
Hi,

ich fände es klasse, wenn du die Zeit fändest.
Mein FR ist jetzt endlich soweit eingerichtet, dass ich mich dem GC zuwenden kann:)

in freudiger Erwartung:)

Frank
 

bubbas

Geonewbie
hallo,

ja war 2 wochen im urlaub deshalb die verzögerung. bis zum we schaff ichs aber versprochen :)

lg

bubbas
 

bubbas

Geonewbie
Hallo,

da ich irgendwie zeitlich nicht dazu komme, ein sauberes ipk mit oe zu machen. Will ich meinen Cachewolf für den Freerunner jetzt einfach so hier reinstellen. Mittlerweile bin ich selber auf Debian auf dem Freerunner umgestiegen, wo es auch das Packet cacao-oj6-jre gibt, mit dem die Java Version von Cachewolf läuft, so dass das crosscompilen von ewe wegfällt ...

Die Version die ich hier reinstelle, enthält ein auf dem Freerunner kompiliertes ewe 1.49 für gtk2 für die ARM Architektur. Damit läuft ewe und der Cachewolf auf den Openmoko Distributionen 2007.02 und 2008.08 und ungetestet denke ich auch auf den anderen. Cachewolf läuft nicht gerade flott damit, aber es ist einigermaßen erträglich.

So genug gequatscht nun zu der Version hier:

Ich hab das (zur Zeit) aktuelle Cachewolf (v1.0.1532-ewe) zusammen mit dem passenden ewe sowie Startskripte und Icons für das Starten aus dem Openmoko Menü gepackt.

http://files.openomy.com/public/bubbas/cachewolf_1.0.1532_freerunner_ewe_gtk2.tar.gz

Zur Installation:

Am besten legt man sich zunächst auf dem Cachewolf (z.B. auf der SD-Karte) ein Verzeichnis an wo, die Cacheprofile gespeichert werden sollen.

Code:
mkdir /media/card/caches

Um die etwas umständliche Handhabe des Spiderns und Anlegen eines Profiles zu umgehen. Kopiert man aus einer lokalen Installation am besten die gewünschten Cacheprofile in dieses Verzeichnis (/media/card/caches/profilname)

Nun laden oder kopieren wir die hier zur Verfügung gestellte Datei
Code:
cachewolf_1.0.1532_freerunner_ewe_gtk2.tar.gz
auf das Neo.

Wir entpacken sie mit:
Code:
tar -xvzf cachewolf_1.0.1532_freerunner_ewe_gtk2.tar.gz -C /

Wichtig ist dabei das "-C /", denn nur so erhalten wir die richtige Ordnerstruktur. Der Cachewolf wird dadurch nach /home/root/cachewolf installiert und zusätzlich noch das Startskript sowie Starticon in die enstprechenden Ordner der Openmoko Distribution.

Man sollte nun im Menü den Cachewolf auswählen und starten können. Es erscheint ein Cachewolf mit viel zu großer Schrift, worum wir uns sofort kümmern werden. Zunächst wählen wir aber unseren Profilordner den wir vorher erstellt hatten aus. Dazu muss man sich durch das Dateisystem klicken, wobei das Ganze etwas fitzelig ist, da man sehr schnell und sehr oft auf die kleinen Ordnersymbole vor dem Ordnernamen klicken muss um in diese hinein zuwechseln (k.A. warum). Hat man es dann geschafft, wählt man "Select Folder". Also in unserem Beispiel in "/media/card/caches". Im nächsten Fenster sollten dann die Profile erscheinen die wir vorher in das Verzeichnis kopiert hatte oder man kann eben ein neues Profil anlegen. Nachdem wir Ok gedrückt haben, startet nach kurzer Pause der Cachewolf. Wir beenden diesen sofort wieder über "Applications/Exit". Nun wurde von Cachewolf die Konfigurationsdatei

Code:
/home/root/cachewolf/prefs.xml

erstellt. Diese öffnen wir in einem Texteditor (über Telnet oder Ftp) und machen einige Änderungen.

Um die Schrift lesbar darzustellen setzen wir:
Code:
<font size ="5"/>

Um das GPS nutzen zu können, setzen wir:
Code:
<port portname = "../dev/ttySAC1" baud = "9600"/>

Wir überprüfen ob
Code:
<basedir dir = "/media/card/caches/"/>
entsprechend unseren Wünschen gesetzt ist.

Nun können wir die Datei abspeichern und Cachewolf neu starten. Die Schrift sollte nun akzeptabel sein und falls man nicht zu viele Caches im Profil hat (ca. 50) sollte die Geschwindigkeit auch akzeptabel sein.

GPS und Maps gehen auch, aber schon etwas langsam ... Die Windrose wird irgendwie sehr groß dargestellt, so dass man dieses Fenster nicht richtig nutzen kann. Das lässt sich möglicherweise in irgendeiner Konfigurationsdatei von gtk einstellen, habe ich aber mangels Zeit nicht getestet.

So ich hoffe, dass es vielleicht dem Einen oder Anderen von Hilfe ist. Ansonsten kann ich nur empfehlen unter Debian die Java Version zu verwenden ;)

Achja wenn eine neue Version von Cachewolf erscheint, könnt ihr einfach die ewe-Version in das Verzeichnis /home/root/cachewolf reinschieben und die alte überschreiben ...

Für Fragen und Kommentare bin ich offen.

Achso falls es irgendwann jemand intressiert ... um das Ewe zu kompilieren musste ich einige Änderungen im Code der nmunix_c.c machen die ich mir aus mirabilos seiner Version zusammengereimt habe. Danach hat die Orginal Version von ewesoft (1.49 die Linux Sourcen) für gtk2 durchkompiliert. Hier ein Diff für diese Datei:
http://files.openomy.com/public/bubbas/ewe.patch

Um auf dem Freerunner zu compilen, muss man die entsprechenden Build Tools und Compiler unter Openmoko installieren, sowie die nötigen Libraries die mirabilos oben genannt hatte ...

Viele Grüße

bubbas
 
Oben