[maemo-developers] Scratchbox and maemo development

From: Mike Cowlishaw mfc at acm.org
Date: Thu Apr 12 17:31:49 EEST 2007
> > Said that, the main elements to consider are:
> >
> > - Development via Scratchbox vs development models bypassing SB
> > - SB vs SB2
> <snip>
> > Several pieces moving around, we need to consider all those and come up
> > with a sensible strategy, and results. All this work is for you guys.
> > Developers, please have your say.

>From this developer's experience, Scratchbox has not been a joy of my life.

I'm in the progress of porting a relatively small application from Windows
(originally OS/2) to the N800 -- a webserver (GoServe) running a Wiki.

First I had to port it to Linux (I used ubuntu because the maemo VMware
image uses that).  That had problems -- but not unexpected (I first used
Unix in 1978, and have used several flavours of Unix and Linux on and off
since then).

Then I had to port it again to Scratchbox X86.  A whole set of new problems;
different levels of libraries, pthreads just didn't work so I had to make my
webserver single-threaded, and several build scripts had to be rewritten

Then I had to port it again to Scratchbox ARMEL.  Here I had to duplicate
all my build and run scripts in bash, because Rexx scripts (which run fine
in Scratchbox X86 and on the real N800 device!) cannot call commands or
other Rexx scripts in the Scratchbox ARMEL environment.  I cannot run the
server to test in the Scratchbox environment but instead have to use the
real device (hence my interest in x11vnc recently :-).

- - -

This is a *big* contrast to when I last programmed for a portable device (an
early Palm, about 8 years ago).  The SDK for that came with a complete
emulator for the device, which ran as an application (under Windows, but the
host is not important) -- what you saw on the Windows screen was *exactly*
what you saw on the actual device.  After using it for a few months, I was
happy to put out code for others to use without even trying it on the real
device.  And, later, I could add features for others to use on their more
advanced (newer) devices without having to go out and buy each and every
hardware variation.

- - -

So that's my feedback: please provide an emulator that runs on some host (a
Debian Linux is fine) for which one can cross-compile and run the resulting
binaries such that what you'll see on the emulator screen is what you'll see
on the actual device.

[Yes, inputs might be a bit different -- the pressure sensor is an
interesting case -- but at least the stylus and hardware keyboard input
should be possible.]

Hope that helps!

Mfc  (google: Mike Cowlishaw)

More information about the maemo-developers mailing list