Skip to content
This repository
Fetching contributors…

Octocat-spinner-32-eaf2f5

Cannot retrieve contributors at this time

file 288 lines (177 sloc) 7.973 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287
Cross compling from sources in debian chroot
============================================

  * The most easy and painless way is to build QtMoko in debian squeeze chroot.

  * You will need debian on your PC

  * Clone current git tree:

git clone git://github.com/radekp/qtmoko.git

  * Initialize and update submodules

cd qtmoko
git submodule init
git submodule update

  * Create and enter debian chroot:

sudo scripts/qtmoko-chroot-armhf.sh

  * Build it:

mkdir -p /root/qte/build
cd /root/qte/build
../qtmoko/configure -device gta04
make
export LD_LIBRARY_PATH=/root/qte/build/qtopiacore/host/lib/
make install

  * If you have e.g. 8 core processor you can speed it up by passing -j8 arg
    to configure and make.

  * Upload the result to your device (you must have phone and usb network up)

../qtmoko/devices/gta04/scripts/update_qtmoko

Native compiling on GTA04
=========================

  * Very easy to setup, takes long time, can produce QtMoko armhf package

  * You will need working QtMoko installation on at least 8GB partition
  
  * Linking takes a lot of memory, so will need swap:
  
dd if=/dev/zero of=/swapfile bs=1024 count=1048576
mkswap /swapfile
swapon /swapfile
  
  * Install QtMoko dependecies:

apt-get update
apt-get install git quilt debhelper build-essential libtiff4-dev libmng-dev quilt libxext-dev libasound2-dev libdbus-1-dev libssl-dev libts-dev libbluetooth-dev libxtst-dev libpng12-dev libjpeg8-dev libv4l-dev libspeexdsp-dev libglib2.0-dev libsqlite3-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libpulse-dev libvorbis-dev libgps-dev
  
  * Get sources:
  
git clone git://github.com/radekp/qtmoko.git
cd qtmoko
git submodule init
git submodule update

  * Build the package:

scripts/build-package-gta04.sh

  * You might want to stop some services for more
    RAM:
    
/etc/init.d/qtmoko-gta04 stop
/etc/init.d/bluetooth stop

  * You can use ccache - first compilation will be slow but then compiling will
    be very fast.

Cross compiling without chroot
==============================
  
  * This is not supported anymore, but if you know what you are doing you can
    go on...

  * You will need Debian wheezy on your PC
  
  * Install required packages on your host PC:
  
apt-get build-dep libqt4-dev
apt-get install libqt4-dev libv4l-dev libdbus-1-dev libqt4-sql-sqlite
  
  * We will use emdebian toolchain, check this page:
  
        http://wiki.debian.org/EmdebianToolchain
        
  * Add emdebian apt repos and also sqeeze repos for older packages:
  
apt-get install emdebian-archive-keyring
echo "deb http://ftp.cz.debian.org/debian/ squeeze main contrib non-free" >> /etc/apt/sources.list
echo "deb http://www.emdebian.org/debian wheezy main" >> /etc/apt/sources.list
apt-get update

  * Install armel cross compiler:
  
apt-get install g++-4.4-arm-linux-gnueabi

  * Install xapt and libraries qtmoko depens on:
  
apt-get install xapt
xapt -a armel -m libxext-dev libasound2-dev libdbus-1-dev libssl-dev libts-dev libbluetooth-dev libxtst-dev libpng12-dev libjpeg8-dev libv4l-dev libspeexdsp-dev libglib2.0-dev libsqlite3-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libpulse-dev libvorbis-dev libgps-dev

  * Make sure that there is no libqt4 installed in /usr/arm-linux-gnueabi
    because QtMoko build can link agains that qt-x11 and will not work.

  * Make link for dbus.h:
  
cd /usr/arm-linux-gnueabi/include
ln -s dbus-1.0/dbus dbus

  * Clone current git tree:

git clone git://github.com/radekp/qtmoko.git

  * Initialize and update submodules

cd qtmoko
git submodule init
git submodule update

  * Create build directory (you cant build from the git directory)

mkdir ../build
cd ../build

  * Build it:

../qtmoko/configure -device neo
make
make install

  * Upload the result to your device (you must have phone and usb network up)

../qtmoko/devices/neo/scripts/update_qtmoko

  * If you want translations to various languages you need to checkout
    the translations git branch:

git checkout origin/translations -b translations


PC build
========

    * It's now possible to build QtMoko for x86 without cross compiling. This
    is great for development.

   * Create and enter debian chroot:

sudo scripts/qtmoko-chroot-armhf.sh
mkdir -p /root/qte/build-pc
cd /root/qte/build-pc

  * Build it:
    
../qtmoko/configure -device pc
make
export LD_LIBRARY_PATH=/root/qte/build-pc/qtopiacore/host/lib/
make install

    * To run the image you need to be root and symlink the result image to opt:
    
cd /opt
ln -s /root/qte/build-pc/image qtmoko

    * Now switch to first console (CTRL+ALT+F1) and run it:

. /opt/qtmoko/qpe.env
qpe


Old way
=======

  * Make sure you have installed on your host PC: libqt4-dev, libv4l-dev

  * You can also do fetch all build dependecies for qt:

apt-get build-dep libqt4-dev

  * Download and install toolchain

cd /
sudo wget http://sourceforge.net/projects/qtmoko/files/Toolchain/qtmoko-debian-toolchain-armv4t-eabi.tar.gz/download -O qtmoko-debian-toolchain-armv4t-eabi.tar.gz
sudo tar xzvpf qtmoko-debian-toolchain-armv4t-eabi.tar.gz

  * If you are on x86_64 you will need to download following 32bit libraries:

libmpfr1ldbl_XXX_i386.deb
libgmp3c2_XXX_i386.deb

     and extract the libraries from these package to /usr/lib32

  * Clone current git tree:

git clone git://github.com/radekp/qtmoko.git

  * Initialize and update submodules

cd qtmoko
git submodule init
git submodule update

  * Create build directory (you cant build from the git directory)

mkdir ../build
cd ../build

  * Build it:

../qtmoko/configure -force-build-qt -device neo
make
make install

  * Upload the result to your device (you must have phone and usb network up)

../qtmoko/devices/neo/scripts/update_qtmoko

  * If you want translations to various languages you need to checkout
    the translations git branch:

git checkout origin/translations -b translations


Compiling natively on ARM
=========================

* You need ARM device with a lot of storage 512MB of RAM (or 256MB + swap)

* Working devices are e.g. N900 or qemu armel buildhost.

* Basic buildhost can be downloaded from here:

http://sourceforge.net/projects/qtmoko/files/BuildHost/

* Install dependencies on build host:

apt-get build-dep libqt4-dev
apt-get install libdbus-1-dev libts-dev libbluetooth-dev libasound2-dev

* Get QtMoko sources:

git clone git://github.com/radekp/qtmoko.git

  * Initialize and update submodules

cd qtmoko
git submodule init
git submodule update

  * Create build directory (you cant build from the git directory)

mkdir ../build
cd ../build

  * Build it:

../qtmoko/configure -device neo -xplatform linux-native-g++ -l dbus-1 -I /usr/include/dbus-1.0/ -I /usr/lib/dbus-1.0/include
make
make install


Qt Extended README
==================

Overview
This is Trolltech's Qt Extended Open Source edition. See the LICENSE.GPL file for the licensing information of this software.
This package contains source code for Qt Extended plus parts of the source code of Qt. Apart from this source package it should not be necessery to install any other Trolltech package to be able to compile Qt Extended.

Documentation
The package contains the Qt Extended reference documentation including all relevant Qt documentation. The documentation includes the following:
 - doc/html/index.html: the starting page for all documentation.
 - doc/html/getting-started.html: for help with installing, building and running Qt Extended.
 - doc/html/building-guide.html: for detailed help with building Qt Extended from source.
For the most up-to-date information, please refer to the http://doc.trolltech.com/

Licenses
You can only develop GPL licensed applications using the Qt Extended Open Source edition. If you wish to develop a commercial application, please go to http://www.trolltech.com/downloads to purchase the commercial package.
For questions regarding licensing terms, email qt-sales@nokia.com.

Copyright C 2009 Trolltech ASA
Something went wrong with that request. Please try again.