Compiling ScummVM/Maemo

From ScummVM :: Wiki
< Compiling ScummVM
Revision as of 15:07, 25 October 2018 by Criezy (talk | contribs) (Text replacement - "</source>" to "</syntaxhighlight>")
Jump to navigation Jump to search

Compiling ScummVM for Maemo

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


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

Note: The following instructions are based on an attempt in a fresh Debian 5 (lenny) i386 install

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

deb debian-lenny free

Then run the following commands to install the SDK: <source lang="bash"> sudo apt-get update sudo apt-get install maemo-sdk </syntaxhighlight>

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

<source lang="bash"> maemo-sdk reload catalogue sudo maemo-sdk --mirror "" install tools lenny-2009-1 sudo maemo-sdk install toolchain arm-2007q3 maemo-sdk install rootstrap diablo4.1.2_armel </syntaxhighlight>

Install dependencies inside the SDK environment

You'll need to install the maemo extras repo to the rootstrap. Add the following line to ~/.maemo-sdk/rootstraps/armel/diablo4.1.2_armel/etc/apt/sources.list

 deb diablo free non-free

and then install the dependencies:

<source lang="bash"> sb2 -eR apt-get update sb2 -eR apt-get install libflac-dev libmad0-dev libmpeg2-4-dev libvorbisidec-dev </syntaxhighlight>

Optional: Install git inside SDK environment

The ScummVM makefile has an optional dependency on git. It uses it as part of populating the version. The git installed on the host operating system is not visible to the SDK environment.

Download the armel git deb from here (thanks Nikosapi) mirror

Install it by running:

<source lang="bash"> sb2 -eR dpkg -i git_1.6.2-1_armel.deb </syntaxhighlight>

Optional: Install libfaad-dev inside SDK environment

Note: this entire step is very optional as no stable games at the time of this writing (v1.8.0) need AAC decoding. It is included here for posterity.

Download these deb files into a temporary directory: libfaad-dev libfaad0 libfaad2

Install them by running:

<source lang="bash"> sb2 -eR dpkg -i libfaad*.deb </syntaxhighlight>

Delete the from the SDK environment so that it statically links to libfaad.a instead of dynamically linking to (This version of isn't available in maemo-extra and is thus unavailable to maemo-users)

<source lang="bash"> rm ~/.maemo-sdk/rootstraps/armel/diablo4.1.2_armel/usr/lib/* </syntaxhighlight>

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: <source lang="bash"> ln -s backends/platform/maemo/debian </syntaxhighlight>


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

Build Package

<source lang="bash"> sb2 dpkg-buildpackage -b </syntaxhighlight>

Compile (Without Building Package)

<source lang="bash"> sb2 ./configure --host=maemo sb2 make </syntaxhighlight>