Maemo SDK+ installation on Debian (AMD64)

Image:Ambox_content.png
This article is out-of-date, and needs to be updated.
Please see the talk page for discussion.


The Maemo SDK+ package includes scratchbox 2 and Qt, but it will only install on 32-bit platforms. If you're running Debian with a 64-bit kernel, Maemo SDK+ can be installed into a chrooted 32-bit environment that sits on top of your 64-bit platform. This guide takes you through all the steps to the point of compilation and running the test.

Contents

Building the chrooted platform

All steps in this section are executed as root, directly on the host.

$ aptitude install debootstrap
$ debootstrap --arch i386 lenny /srv/lenny-ia32 http://ftp.debian.org/debian/
$ echo "deb http://maemo-sdk.garage.maemo.org/download/host debian-lenny free" >> /srv/lenny-ia32/etc/apt/sources.list
$ aptitude install schroot
$ cat >> /etc/schroot/schroot.conf <<EOF
[lenny]
description=Debian lenny
type=directory
location=/srv/lenny-ia32
priority=3
users=<YOUR_USERNAME_HERE!!>
groups=<YOUR_USER_GROUPNAME_HERE!! (probably "users")>
root-groups=root
run-setup-scripts=true
run-exec-scripts=true
aliases=stable,default
EOF

Installing Maemo SDK+

As root on the host:

# schroot -c lenny

or

# chroot /srv/lenny-ia32/ /bin/bash

You are now logged in as root in the chrooted environment as root.

# aptitude update
# aptitude install maemo-sdk
# maemo-sdk install tools lenny-2009
# maemo-sdk install tools lenny-2009-1

As user on the host:

$ schroot -c lenny

You are now logged in as root in the chrooted environment as a user.

$ maemo-sdk install rootstrap diablo4.1.2_armel
$ sb2 -eR apt-get update
$ sb2 -eR apt-get install maemo-sdk-runtime maemo-sdk-dev maemo-sdk-dbg

Preparing host for target GUI

As root on the host:

$ aptitude install xserver-xephyr

Building Maemopad to test the build environment

As user on the host:

$ schroot -c lenny

You are now logged in as root in the chrooted environment as a user.

$ mkdir -p ~/src/mytest
$ cd ~/src/mytest
$ sb2 -eR apt-get update
$ sb2 apt-get source maemopad
$ cd maemopad-2.4
$ export SBOX_REDIRECT_FORCE=/usr/bin/perl
$ sb2 dpkg-buildpackage -rfakeroot -d -b

Running Maemopad

As user on the host:

$ Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac -kb
$ schroot -c lenny

You are now logged in as root in the chrooted environment as a user.

$ export DISPLAY=:2
$ sb2 -eR dpkg -i maemopad_2.4_armel.deb
$ maemo-sdk start gui

Notice that Maemopad appears in the x11 window.

$ maemo-sdk stop gui

Installing Qt

As root in the chrooted environment:

$ aptitude install qt4-dev-tools

Known Issues

The procedures above work quite well, other than the fact that the following scripts are missing from the chrooted environment:

* run-standalone.sh
* af-sb-init.sh

They don't seem to be important.. just a cosmetic matter.

Guides used as a source for this document

Parts of the following sites were used to compose this guide. These sites should be visited to get more detail on the process.