niemueller.de::home niemueller.de
Open Software. Open Knowledge.




 

Tim's WebLog


Maemo 5 SDK on Fedora 11 x86_64

The new Nokia N900 has been presented with much fanfare featuring Maemo 5. I'm the happy owner of a N810 and it was the original reason to write the LaserGUI for Fawkes. I'm really looking forward for the device. I planned to get a new mobile anyway and wasn't sure whether to go for the N97 or an Android phone. Now I'm eagerly waiting to get a N900 into my hands.

The last time I developed for Maemo I had setup a 32bit virtual machine with Fedora to run the development environment. But this is clumsy at best. It consumes a lot of extra resources (especially RAM) and the virtual environment cannot do my native full resolution. This time I wanted to try the SDK for the new Maemo version and installed it natively on my x86_64 Fedora installation, which works just fine. Here are some notes that might be helpful if you want to do the same. The notes are for the Maemo 5 SDK, Beta 2.

You need the basic 32bit libraries to install the environment. I didn't run into anything that was missing, so I guess a basic 32bit environment is sufficient.

There is a very good installation manual for the SDK. First download the scratchbox and sdk installer scripts referenced in the manual. To install on x86_64, you need to make two changes. First you need to add the kernel parameter

vdso32=0
by adding it to the lines beginning with "kernel" in /etc/grub.conf. For this to take effect you need to reboot (before you start the installation). Secondly you need to enable the "force" mode without enabling .deb installation. This is only possible by adding the script. For this add "__force=yes" around line 311 (where the s parameter is handled). The section should afterwards look like this:
s)
   __type=tgz
   __force=yes
   __scratchbox=$OPTARG
   ;;
Now you are ready to install scratchbox. For this execute the scratchbox install script as root like this
sh maemo-scratchbox-install_5.0beta2.sh -s /opt/maemo-sdk-5b2/scratchbox -u tim
and follow the instructions on the screen. This will install the SDK to /opt/maemo-sdk-5b2/scratchbox and add the user tim to the allowed users. This must be your user name on the Fedora system. Then execute the SDK installer not as root, but as normal user and follow the instructions. There was nothing special I had to do, just do
sh maemo-sdk-install_5.0beta2.sh -s /opt/maemo-sdk-5b2/scratchbox
Now Maemo is installed and after one slight installation and/or fix you are ready to go. The current version of Xephyr in Fedora is broken. It was only in version 1.6.3 where patches have been applied that fix segfaults when pressing keys. This version is available in the updates-testing repository. I did not experience any problems, your mileage may vary. To update the package do
yum --enablerepo=updates-testing update xorg-x11-server-Xephyr
replace update with install. I have actually updated all xorg-x11-server* packages. I'm not sure if this is necessary. Works fine for me so far.

You might want to read Thomas Thurman's tutorial series about developing for the N900.

You can install the Maemo 4 SDK similarly. In the scratchbox install script uncomment the "exit 1" line by prefixing it with a hash (#) to eliminate the i386 check. You need the same vdso32 parameter and the updated Xephyr. I recommend choosing different directories for the two SDKs, as they use different versions of scratchbox.





Top 5 Pages
Wiki
WebLog
SquidGuard Webmin Module
Link Pile
Onager




Palm Software
UniMatrix UniMensa UniSorter
UniChat OHS Mobile Onager


My Bookshelf




Valid XHTML 1.1!

RSS Copyright © 2000-2009 by Tim Niemueller