MikeK's software notebook

MikeK's software notebook

What you will find

This used to be the place where I wrote stuff I was thinking about while working on the Mozilla project.

Maybe in the near future I'll start to update it again as I'm involved in a couple of new open-source projects - updates pending...

How to setup the build environment to build Fennec for Qt with the MAEMO 5 SDK (Fremantle) in scratchbox on Ubuntu

Why did I reboot?Posted by Mike Kristoffersen 02 Feb, 2010 14:35:04
Note: the following instruction should also work on top of previous installations of scratchbox, you don't need to uninstall the previous version, but you should be logged out of it.

Install the Nokia development kit for the N900 (MAEMO 5 SDK). I choose:


Run it by:
$ sudo python ./maemo-sdk-install-wizard_5.0.py

(If you don't have python, you need to install it first, follow the on-screen instructions)

This will launch the GUI installer, chose to install the development version. This will install scratchbox and most of the libraries that you will need.

Launch scratchbox:
$ scratchbox

Now you can choose the platform you want to work on with the scratchbox tools:

> sb-menu

Choose "FREMANTLE ARMEL" to run code natively on the N900.

You now need to install a few libraries from inside scratchbox:

> apt-get install python2.5 libqt4-core libqt4-gui libqt4-dev libidl-dev

There are two important things you will need to remember in your mozconfig:

1) tell it to use Qt:
ac_add_options --enable-default-toolkit=cairo-qt

2) Currently we also need to disable crashreporter as it hasn't been converted to Qt
ac_add_options --disable-crashreporter

For reference my MOZCONFIG is NR_QT_NokiaRelease_mozconfig.txt:

# cs2007q3 gcc 4.2 is busted, we think, and doesn't
# look in the expected places. --dougt.
# $PWD/... was added due to bug 463076
export LDFLAGS="-Wl,-rpath-link,$PWD/dist/bin/:/usr/lib:/lib"

# Options for client.mk.
mk_add_options MOZ_BUILD_PROJECTS="xulrunner mobile"
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../objdir-fennecNokia-qt-release
mk_add_options MOZ_MAKE_FLAGS="-j3 --no-print-directory"
ac_add_options --enable-gstreamer

# Global options
# ac_add_options --enable-debug
# ac_add_options --disable-optimize

# XULRunner options
ac_add_app_options xulrunner --enable-application=xulrunner
ac_add_app_options xulrunner --disable-javaxpcom

# Enabling --with-arm-kuser implies Linux on ARM and enables kernel
# optimizations for that platform
ac_add_app_options xulrunner --with-arm-kuser

# Disabling tests due to bug 454881
ac_add_options --disable-tests

# mobile options
ac_add_app_options mobile --enable-application=mobile
ac_add_app_options mobile --with-libxul-sdk=../xulrunner/dist

# enable qt
ac_add_options --enable-default-toolkit=cairo-qt
ac_add_options --disable-crashreporter

  • Comments(7)

Fill in only if you are not real

The following XHTML tags are allowed: <b>, <br/>, <em>, <i>, <strong>, <u>. CSS styles and Javascript are not permitted.
Posted by Mike Kristoffersen 24 Nov, 2011 21:48:17

As it is no longer supported I would imagine it would take some work to do, but as I'm no longer involved in the project on a regular basis, it is just a guess...

Posted by noone 20 Nov, 2011 00:08:10

I see maemo fennec nightlys are no longer being built. Is the codebase no longer compatible with maemo, i'm just wondering if it's worthwhile building it myself or if it's just going to do an immediate crash on running.

Posted by nobody 20 Nov, 2011 00:05:57

Posted by Mike Kristoffersen 08 Feb, 2010 19:56:19

Indeed it should Juha, I have updated the blog post :) Thanks!

Posted by Juha 08 Feb, 2010 19:48:49

And indeed, I corrected spelling on the fly giving. Fremantel should be Fremantle.

Posted by Juha 06 Feb, 2010 21:55:50

Sorry for being spelling police but Fremantlel is actually spelled Frementle.

Posted by smaug 02 Feb, 2010 17:31:23

Could you perhaps add this information to MDC?