View source for Qt Extended 4.4.3

From Openmoko

Jump to: navigation, search

You do not have permission to edit this page, for the following reasons:

  • The action you have requested is limited to users in the group: Administrators.
  • You must confirm your email address before editing pages. Please set and validate your email address through your user preferences.

You can view and copy the source of this page:

Return to Qt Extended 4.4.3.

Personal tools

Note: Qt Extended 4.4.3 is the last version of Qt Extended. Trolltech cancelled the project on 3 March 2009 (Qt Software discontinues Qt Extended).

The community created a fork of Qt Extended called Qt Extended Improved.

Installing Qt Extended 4.4.3 on the FreeRunner

Download the kernel and rootfs

Next download the kernel and rootfs to your workstation. Here's a link to the rootfs created by HouYu Li. And here's the kernel image. Boot your FreeRunner in dfu mode and use the dfu commands:

desktop# dfu-util -d 0x1d50:0x5119 -a kernel -R -D  testing-om-gta02-20090120.uImage.bin

    ... stuff ...

desktop# dfu-util -d 0x1d50:0x5119 -a rootfs -R -D  qt-extended-4.4.3-rootfs.jffs2

    ... more stuff ...

This kernel/rootfs fixes the WSOD problem and includes the echo patch but doesn't seem to support ogg or mp3 playback.

Building the Qt Extended 4.4.3 SDK

First make the build directory, download the source, and set the environment variables. In this example, I write the environment variables to a file then I source the file.

mkdir -p /opt/QtExtended/build/
cd /opt/QtExtended
tar -xzvf qt-extended-opensource-src-4.4.3.tar.gz
echo "export QTOPIA_DEPOT_PATH=/opt/QtExtended/qt-extended-4.4.3" >> setpaths-4.4.3 
echo "export QPEDIR=/opt/QtExtended/build/" >> setpaths-4.4.3
. setpaths-4.4.3

Install the toolchain:

cd /opt
tar xzvf arm920t-eabi.tgz /

Change to the source directory, download and apply three patches.

tar xzf qt-extended-4.4.3-libmad.tar.gz
patch -p1 < qt-extended-4.4.3-libmad.patch
patch -p1 < pkg-config-template.patch
patch -p1 < 0001-added-echo-suppression-fixes-for-the-openmoko-neo-ph.patch

Do the linux three-step: configure, make, make install. But there are a couple new twists. First, there is a bug in the source which requires us to create a symlink sdk in the sdk directory (basically, someone made a typo and incorrectly entered sdk twice in an include path).

$QTOPIA_DEPOT_PATH/configure -device neo -D _FORTIFY_SOURCE=0
cd sdk
ln -s . sdk
cd ..
make install
bin/qbuild sdk

Fix the paths:

mkdir -p /opt/Qtopia/SDK/4.4.3
ln -s /opt/QtExtended/build/scripts/sdk/scripts/ /opt/Qtopia/SDK/scripts
mv /opt/Qtopia/SDK/scripts/devel- /opt/Qtopia/SDK/scripts/
echo "Device: neo" > /opt/Qtopia/SDK/versioninfo
ln -s /opt/QtExtended/build/opt/Qtopia/SDK/4.4.3/neo
ln -s /opt/QtExtended/build/sdk/ /opt/QtExtended/build/sdk/sdk 
cp $QTOPIA_DEPOT_PATH/bin/mkPackages /opt/Qtopia/SDK/scripts/

If you want to have the sdk working: add the following code in front of /opt/Qtopia/SDK/scripts/functions

echo "4.4.3"
echo "4.5"

open /opt/Qtopia/SDK/scripts/sdk change the following:to have sdk -i and -r working again

at line 253:  '= "1"' to '> "0"' 
at line 233: 'ENVFILE=`cat /opt/Qtopia/SDK/$QPEVER/$DEVICE/configs/current.pri | grep QTOPIA_PREFIX= | awk 'BEGIN{FS="="}{print $2}'`"/qpe.env"' 
	to 'ENVFILE="/opt/Trolltech/Qtopia/qpe.env"'
at line 259, 263 & 281: '/opt/Qtopia/qpe.env' to '/opt/Trolltech/Qtopia/qpe.env'