Compiling ScummVM/Maemo

From ScummVM :: Wiki
Jump to navigation Jump to search

Compiling ScummVM for Maemo

This page describes how you build Maemo packages from the ScummVM source code tree.

Preparation

Compilation should be done on a Linux machine running Debian/Ubuntu.
For other operating systems, a Linux virtual machine running Debian/Ubuntu can be used instead.

The process is based on this document.

Download and Install Maemo SDK

Add the following line to /etc/apt/sources.list:

deb http://maemo-sdk.garage.maemo.org/download/host debian-squeeze free

Then run the following commands to install the SDK:

apt-get update
apt-get install maemo-sdk

You'll need to make sure the custom and no longer latest versions are installed the maemo-sdk and its dependencies. I had to downgrade the following packages when using debian 7 (wheezy):

[DOWNGRADE] libsb2:i386 2.2.4-1debian1 -> 2.0-lta123
[DOWNGRADE] sbrsh:i386 7.6.1 -> 7.6maemo2
[DOWNGRADE] scratchbox2:i386 2.2.4-1debian1 -> 2.0-lta123

Then run the following commands to build/install the tools and compilers:

sudo maemo-sdk --mirror "http://archive.debian.org/debian/" install tools lenny-2009-1
sudo maemo-sdk install toolchain arm-2007q3
maemo-sdk install rootstrap diablo4.1.2_armel
maemo-sdk install binaries diablo4.1.2_armel

The last command will fail because it wants to run "maemo-rootstrap path diablo4.1.2_armel" but the command isn't there because it is an obsolete SDK thing. It needs to run "maemo-sdk show path rootstrap diablo4.1.2_armel" instead. You can edit the /tmp/sb2-maemo-sdk-nokia-binaries_diablo_4.1.2.sh and run it manually (with -r diablo4.1.2_armel) or you can make available a fake maemo-rootstrap binary that runs the correct command and then reattempt to install the binaries. Here's an example of a fake maemo-rootstrap that does that:

if [ "$1" = "path" ]
 then
   maemo-sdk show path rootstrap $2
else
   echo "Error: Only path argument is supported"
   exit 1
fi

Ensure Packaging Files Are Available In Source Tree Root

This requires a symlink from backends/platform/maemo/debian to the root of the scummvm checkout:

ln -s backends/platform/maemo/debian 

Compile

Depending on what you want, choose one of the following. If you're not sure, choose the first one.

Build Package

sb2 dpkg-buildpackage -b

Compile (Without Building Package)

sb2 ./configure --host=maemo
sb2 make