Hi Stefan,<br><br>Looks like a very interesting approach. Good work on this mini-howto. Will have to try it out later.<br><br>With regards,<br><br>Mark.<br><br><br><br><div><span class="gmail_quote">On 9/26/07, <b class="gmail_sendername">
Stefan Winkler</b> <<a href="mailto:openmoko@winklerweb.net">openmoko@winklerweb.net</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Ok, to answer my own question: ("What do you recommend in order to start app hacking for OM? (Ok, I can
just write plain GTK+ and compile libmokoui x86-natively on my dev
machine, but I also want to see, how my app looks like on a neo...")<br><br>I figured out a way to develop high-level openmoko-apps. <br><br>Let's
call it lightweight development environment. I tried to figure this out
from diverse wiki descriptions and other resources. The rationale
behind this is, that in order to get more developers hacking on
user-level software, we should provide them with an easy start, so that
they can get a hello world working in openmoko-ui style in 10 minutes
(and not 2 days like the openmoko-devel-image).
<br><br>If someone finds this helpful, please comment or feel free to publish it in the wiki.<br><br><span style="font-weight: bold;">== Openmoko lightweight high-level development environment ==</span><br><br>Preconditions:
<br><ul><li>you want to develop high-level OM applications. High-level
meaning involving some GUI and logic and no accessing gps, gsm or other
specialities. (I haven't tried dbus yet...)</li><li>you have no
openmoko-devel-image and you don't want to build one right now (you
won't get around this step, later - but then, openmoko-devel-image
building and simulation is maybe not stable and fast enough for your
current use and you don't want to lose 2 days of compiling and fixing
build issues just to start developing a simple GTK+-hello world).
</li><li>you have an isolated sandbox, or you don't care having
openmoko suff messing up your usual directories (the process below will
install libmokoui and maybe others into your standard lib directory. I
haven't tries to change library install locations, but you can do that
if you like/need. I don't because I have set up a vmware instance just
for openmoko development).
</li></ul><br>You can follow these steps to get openmoko-calculator
running in openmoko style using Xephyr (if you want other applications,
like the openmoko-feedreader, you need to resolve the library
dependencies):<br><br>
Do this once:<br><ul><li><span style="font-weight: bold;">install xserver-xephyr, matchbox-window-manager, and all that development stuff </span>(including, but certainly not limited to gtk-2.0-dev, gtk-doc-tools, autoconf, automake, libtool, gettext, gcc, ...)
<br>This list is for Ubuntu/Debian, Packages may be named differently depending on your distro. <br><br> </li><li style="font-weight: bold;">svn checkout <a href="http://svn.openmoko.org/trunk/src/target/OM2007.2/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
http://svn.openmoko.org/trunk/src/target/OM2007.2/
</a><br>into a directory of your choice. Let's call this $OMDIR from now on ...<br></li><li style="font-weight: bold;">cd $OMDIR/OM-2007.2/libraries/libmokoui2; autogen.sh; make all; sudo make install</li><li style="font-weight: bold;">
mkdir ~/.themes</li><li style="font-weight: bold;">ln -s $OMDIR/OM-2007.2/artwork/themes/openmoko-standard-2 ~/.themes/openmoko-standard-2</li></ul>Do this to start the embedded X server:<br><ul><li style="font-weight: bold;">
Xephyr :1 -ac -dpi 283 -screen 480x640+86+295 &</li><li style="font-weight: bold;">matchbox-window-manager -display :1 -theme openmoko-standard-2 &</li></ul>
Do this in every terminal you use to start an openmoko application:<br><ul style="font-weight: bold;"><li>export DISPLAY=:1</li><li>export GTK2_RC_FILES=~/.themes/openmoko-standard-2/gtk-2.0/gtkrc</li></ul>
For example, to get openmoko-calculator to run:<br><ul><li><span style="font-weight: bold;">cd $OMDIR/OM-2007.2/applications/openmoko-calculator; autogen.sh; make</span></li><li style="font-weight: bold;">export DISPLAY=:1
</li><li style="font-weight: bold;">export GTK2_RC_FILES=~/.themes/openmoko-standard-2/gtk-2.0/gtkrc</li><li><span style="font-weight: bold;">src/openmoko-calculator</span></li></ul>Voilą, there is your calculator.<span style="font-weight: bold;">
<br></span><br>
Please note once again, that this method works only for a quick and easy start into openmoko development. <br>If
your application shall run on the real hardware, later on, you will
have to switch over to openmoko-devel-image and the bitbake process
some time in the future. <br><br>I'd love to hear comments ;-)<br><br>Cheers,<br>Stefan "jumpy" Winkler
</blockquote></div><br>