you're reading...
gvsig mobile, openmoko, wonthurt

Recommended settings to run Java applications on the Neo Freerunner phone: SHR & Jalimo

1. The operating system

As far as I know, the word Openmoko means three different things:

  • It’s the name of a project dedicated to delivering mobile phones with an open source software stack. I’ll refer to this as Openmoko(p).
  • It’s the name of the Linux-based operating system that is part of the mentioned project. It’s also called “OM”, so I’ll refer to this as OM. The hardware part consists of two different phones: the old Neo 1973 (aka as GTA01) and the more recent Neo Freerunner (aka GTA02, see pictures below).
  • It’s the name of the company that started the project. I’ll refer to this as Openmoko(c).

SHR is now probably the most used distribution for the Neo Freerunner phone. It’s been a community-driven alternative to OM for a long time now. Since Openmoko(c) announced that they were abandoning Openmoko(p), SHR has gained popularity and the community behind it is still very active.

2. The Java virtual machine

From their own wiki:

Jalimo is a project to maintain a full featured free Java-like stack for mobile Linux-based devices. The aim is to pack and tailor existing JVM-related projects, as well as to develop APIs and tools for easy integration and development for the target platforms.

I am currently using Jalimo’s binaries for JamVM, Classpath and the SWT widgets. They are targeting especially the Nokia N800, N810 and N900 tablets, the Neo Freerunner phone, and are probably interested in any other Linux-based mobile device. Jalimo’s main contributors are Sebastian Mancke, Robert Schuster and Xerxes Rånby.

In the latest versions of SHR and Jalimo, the SWT widgets have this nice dark look. Click to see larger images:

Discussion

6 thoughts on “Recommended settings to run Java applications on the Neo Freerunner phone: SHR & Jalimo

  1. is this http://www.opkg.org/package_162.html updated regularly or i can find some newer packages?
    thanks for your efforts
    d

    Posted by davide | 26/02/2010, 7:07 PM
  2. Hello, thanks for your message.

    My friend (?) J. R. stopped updating the opkg page some time ago. He has better things to do, I presume. The download page is now:

    https://garage.maemo.org/frs/?group_id=934

    Version 0.1.6 is only available for Linux PC, but with little effort you can install it on any other platform (the JAR files are the same, you only need to change the start script and install dependencies).

    Regards,
    Juan Lucas

    Posted by gvsigmobileonopenmoko | 26/02/2010, 9:47 PM
  3. Hi,
    i tried with your instructions reported on “install” tab :P (Iooking more carefully sometimes helps :) ) but gvsig does not start… (freerunner – shr unstable)
    this is the log:
    root@om-gta02 ~ $ gvsig-fr.sh
    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
    at org.eclipse.swt.internal.Library.loadLibrary(Library.java:233)
    at org.eclipse.swt.internal.Library.loadLibrary(Library.java:151)
    at org.eclipse.swt.internal.C.(C.java:21)
    at org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:63)
    at org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:54)
    at org.eclipse.swt.widgets.Display.(Display.java:130)
    at es.prodevelop.gvsig.mobile.app.Launcher.main(Launcher.java:131)

    but I have swg-gtk installed:
    root@om-gta02 ~ $ locate swt-gtk
    /usr/share/java/swt-gtk-3.4.jar
    /usr/share/java/swt-gtk.jar

    I guess i can make a symbolic link, but I have no idea where gvsig searches for… (and i guess/hope this fixes the problem)
    Do you use gvsig on fr?

    thanks!
    d

    Posted by davide | 27/02/2010, 2:14 PM
  4. Hello. Sometimes the dependencies must be installed explicitly, I don’t know why. Try:

    opkg install libswt3.4-gtk-jni

    Can you check if you have the swt native libraries (something like “libswt3.4…so”) ?

    Regards,
    Juan Lucas

    Posted by gvsigmobileonopenmoko | 27/02/2010, 6:10 PM
  5. First of all: Thanks for your help!
    second:
    root@om-gta02 ~ $ locate libswt
    /usr/lib/opkg/info/libswt3.4-gtk-java.control
    /usr/lib/opkg/info/libswt3.4-gtk-java.list
    so no libs installed. Following your advice:

    root@om-gta02 ~ $ opkg install libswt3.4-gtk-jni -force-depends
    because it complains about gtk+-fastscaling (>= 2.10.14)

    now:
    root@om-gta02 ~ $ locate libswt
    /usr/lib/jni/libswt-atk-gtk-3448.so
    /usr/lib/jni/libswt-cairo-gtk-3448.so
    /usr/lib/jni/libswt-gtk-3448.so
    /usr/lib/jni/libswt-pi-gtk-3448.so

    and gvsig works! Great! Thanks a lot for your help, now I have to learn how to use it :P
    Thanks again!
    d

    Posted by davide | 27/02/2010, 7:06 PM
  6. why you are not developing under Android platform? i guess it will be populer soon

    Posted by YUI | 21/03/2010, 2:12 PM

Leave a comment