[maemo-developers] libosso-abook-1.0 and librtcom-eventlogger

From: Graham Cobb g+770 at cobb.uk.net
Date: Tue Jun 22 11:54:08 EEST 2010
On Tuesday 22 June 2010 06:20:26 saurabh aggarwal wrote:
> So, are we supposed to produce multiple binaries for every version of Maemo
> platform? That doesn't sound right.

The answer is: it depends.

In general in Linux, an application developed on one version will often work 
on later versions (the opposite is not true: applications built on one 
version normally do not work on earlier versions).  There can be major break 
points for which this is not true, and the more libraries you use the more 
likely you will hit a break point.  In this, Linux is very much like Windows 
but it is fair to say that Linux distributions do not make as much effort 
over this as Windows.  Don't forget that in the Linux world, most 
applications are open and are fully recompiled by the distribution -- closed 
aplications are the exception.  This is opposite to the Windows case.

However, Maemo is a bit different.  It is a special-purpose, embedded platform 
and it does not attempt to provide a general purpose platform.  If you don't 
use any of the device special features (no graphics, no location, no sound, 
no ...) then it is possible your app will work on all Maemo devices from the 
770 on.  In practice that is limited to command line file manipulation 
utilities (like "diff", say).

No attempt is made to keep graphics libraries compatible between major 
releases.  So graphical apps for Maemo 4 (N800/N810) do not work on Maemo 5 
(N900),  That is not a big problem -- these are different devices.

Normally, for minor releases, compatability is maintained.  So, for example, 
chinook applications mostly work on diablo (two versions of Maemo 4). But 
there are no guarantees and, unusually, PR1.2 does break some libraries.  Not 
all applications break, but some do.

I must admit I am surprised to learn that libosso-abook breaks.  I thought the 
breaks in PR1.2 were mainly Qt and possibly some obscure libs no one ever 
used!

If I were in this position, I would continue to develop using the PR1.1 SDK, 
and submit sources to the autobuilder to build PR1.2 versions in 
extras-devel.  That way I have both versions on hand.

Graham
More information about the maemo-developers mailing list