Copyright (C) 2008 Nokia Corporation
All rights reserved.
RELEASE INFORMATION
Project: maemo SDK+
Version: BETA-2
Baseline: baseline neutral
Date: 2008-09-29
GENERAL INFORMATION
===================
This is maemo SDK+ BETA-2 release. This release contains only the
core SDK components and required tools that are needed to do
software development for Nokia Internet Tablets.
TARGET AUDIENCE
===============
This BETA-2 release is targeted to maemo developers.
WHAT IS NEW IN THIS RELEASE
===========================
* Scratchbox2 1.99.0.25-lta32 version upgrade. SB2 with latest patches.
- Experimental support for i386 rootstraps.
- Several other fixes and clean ups.
* Q-Emu 0.9.1-4 (SB2 version with patches)
- Several missing system calls implemented.
- Other fixes.
* The core maemo-sdk 0.9.10 package with maemo-rootstrap and other
updates to the maemo-sdk scripts.
- many fixes to maemo-tools.
- cross-compilers are now installed using 'maemo-tools install-gcc'
command.
- improvements to maemo-runtime tool.
- initial maemo-target tool.
- Manual page updated.
- Bug fix (#2846): removed unsafe use of getlogin().
* Updated documentation that reflects the changes in the scripts and
environment.
WHAT IS MAEMO SDK+ ?
====================
Maemo SDK+ BETA-2 provides an alternative way to do maemo
application development.
Unlike all previous maemo SDKs this release is based on Scratchbox-2
(=SB2) cross-compilation engine. The previous maemo SDKs were all
based on Scratchbox-1 (=SB1).
There are some differences between maemo SDK+ and other maemo SDKs.
For example maemo SDK+ is not a "closed" development
environment. You are working and developing in your native Linux PC
(you could develop your maemo application under your ~/src/
directory if you like). In addition you can basically use any normal
Linux tool or utility (as such) without the need to port it inside
SB1 like in older releases.
Maemo SDK+ is very small and compact compared to SDKs that are based
on SB1. The reason for this is that the SB2 is using many tools that
are already available in your host computer and there is no need to
replicate the tool inside the SDK (like in SB1). Maemo SDK+ also
introduces build tools distribution concept. You can set up a separate
distribution to contain the specific build tools you want to use.
By default, we use Debian Etch tools distribution.
One of the benefits of maemo SDK+ is that you don't need to change
targets, the same user can work in multiple targets at the same time
(but it's better to work in separate source trees so that one does
not by accident m ix e.g. arm and x86 objects when building code).
This release is "baseline neutral" which means that this maemo SDK+
is not targeted for any spesific Internet Tablet or OS200X release.
NOTES ABOUT ROOTSTRAPS
======================
We don't ship rootstraps in this release even if these are still
needed.
Instead of shipping rootstraps we provide a small tool called
"maemo-rootstrap" that you use to download, install and configure
the rootstraps to your development machine.
For further information please read the "Install.txt" and "User
Guide" documents.
DO I NEED TO UPGRADE TO MAEMO SDK+ ?
====================================
No. You can still continue to develop your application using the
maemo Chinook or maemo Bora SDKs.
However, if you want to know how developing your application "outside
of the box" feels like then you might want to try this release.
Please note, that this is still a beta release and many services or
functions are not yet "product level quality". Expect to have
issues. In addition read carefully the "Known problems" chapter in
this document.
COMPONENTS
==========
maemo SDK+ BETA-2 contains the following components:
- Scratchbox-2: included. Provides crosscompilation and debian
package building with "dpkg-buildpackage" should work for most
source packages for Bora or Chinook releases.
- QEMU v 0.9.1-4: included. QEMU is used in user-mode emulation mode
to run ARM-binaries during compilation and package building
stage. Part of CPU-transparency support.
- Anjuta IDE maemo plugin: included. Requires Anjuta IDE
v2.3.0. This includes maemo code skeleton that provides lots of
ready code to start maemo application development.
- SBRSH/SBRSHD: included. Supports Scratchbox Remote Shell that is
used to provide CPU transparency functionality during
crosscompilation.
- SSHFS/FUSE: included. Supports mounting Pc filesystems from the
Tablet (used to support CPU-transparency plus for other
development purposes).
- Remote screen mirroring from Tablet to Host using native X11
protocol (X11 is faster than using VNC).
- MAEMO-ROOTSTRAP manager to manage installation and configuration
of maemo rootstraps.
- MAEMO-TOOLS manager to manage build tools distribution.
- MAEMO-TARGET manager to manage build tools distribution.
- MAEMO-SDK-TABLET: included. Helper utility for developers to
set/unset various parameters.
Note: this release does not contain any rootstraps.
SOFTWARE REQUIREMENTS
=====================
This release was tested on Ubuntu Hardy Server Linux distribution, but it
is known to work also in Debian testing (Lenny) and Debian unstable (Sid).
INSTALLATION INSTRUCTIONS
=========================
Please see
http://maemo-sdk.garage.maemo.org/install.html
KNOWN ISSUES OR LIMITATIONS
===========================
- To remove maemo SDK+ installation completely, back up all your modifications
under ~/.maemo-sdk if you have any (it is recommended not to keep any
important work or data under this directory except components you can
reinstall again). Then do to the following which removes all rootstraps
and installed tools:
$ sudo apt-get autoremove maemo-sdk
$ rm -rf ~/.scratchbox2
$ rm -rf ~/.maemo-sdk
$ sudo rm -rf /opt/maemo
- CPU-transparency (when using sbrsh) has limitations when requests
from Pc to Tablet are coming too quickly.
- When using sbrsh the Tablet must have the same user UID/GID than
what is used in PC side. This is normally set automatically by
maemo-device script but if the execution fails these must be set
manually.
- If you enable debugging option in sbrshd your /tmp directory may
become full in a relatively short time. Restarting sbrshd is not
possible if /tmp directory is full.
- Limited support when debugging ARM-binaries with gdb in
ARM-rootstrap environment (some binaries may not be possible to
debug).
- This Beta-2 is only available for Ubunty Hardy / i386.
RELEASE FEEDBACK
================
General feedback about this release can be send to:
maemo-sdk-developers@garage.maemo.org
maemo SDK+ related bug reports should be reported to the
project Tracker service in:
https://garage.maemo.org/projects/maemo-sdk
---
END