Copyright (C) 2007 Nokia Corporation All rights reserved. RELEASE INFORMATION Project: maemo 4.0 'chinook' Development Platform Version: 4.0 alpha Baseline: maemo 3.1 + Sardine Date: 2007-07-05 This INSTALL.txt file explains how to install and setup the maemo 4.0 alpha development environment in your computer. This document is targeted for maemo developers. Content: 1. Updating existing Scratchbox installation 2. Scratchbox Apophis r4 installation 2.1 Installing Scratchbox using the new installer script 2.2 Installing Scratchbox Apophis manually 3. Installing maemo 4.0 alpha SDK 3.1 Nokia EUSA licensed binaries 3.2 Completing the installation 4. Installing Xephyr X11 server 4.1 Getting Xephyr 4.2 Xephyr startup parameters 1. UPDATING EXISTING SCRATCHBOX INSTALLATION ============================================ If you are currently using an older Scratchbox 0.9.X version you will need to upgrade to the latest Scratchbox Apophis r4. The recommended method is to remove old Scratchbox installation completely and to remove /scratchbox directory before installing the new Scratchbox. Note that, with this release you cannot upgrade old maemo SDK targets to maemo 4.0 alpha level. IMPORTANT: For maemo 2.1 users it is strongly recommended that you take a full backup of your Scratchbox development environment and related files before upgrading to new Scratchbox. WARNING: Remember to stop scratchbox service before removing scratchbox directory. This will unmount scratchbox bind mounts and thus prevent removing files from your host system. If you choose not to remove your old installation refer to the following document for instructions how to upgrade the scratchbox. Upgrading is explained in Chapter 5.2 in the document "Installing Scratchbox" in the scratchbox.org website: http://scratchbox.org/documentation/user/scratchbox-1.0/html/installdoc.html 2. SCRATCHBOX APOPHIS R4 INSTALLATION ===================================== This chapter is for developers who do not have Scratchbox (=SB) Apophis R4 installed in their computer yet. You can install SB Apophis two ways: - 2.1) using the new SB installer script (recommended) - 2.2) installing SB manually It is strongly advised to use the new SB installer script as explained in chapter 2.1 below. If for some reason you want to or you need to install SB manually jump to chapter 2.2. 2.1 Installing Scratchbox using the new installer script This maemo release includes installer script which will download and install the required version of scratchbox on your host computer. Installer script can now be found from this path: http://tablets-dev.nokia.com/unstable/chinook-alpha/maemo-scratchbox-install_4.0alpha.sh To install scratchbox first download the script (from the same directory where you found this INSTALL.txt file) to your host computer and just run the maemo-scratchbox-install_4.0alpha.sh as user root: $ sudo chmod a+x ./maemo-scratchbox-install_4.0alpha.sh $ sudo ./maemo-scratchbox-install_4.0alpha.sh This is the easiest way to install scratchbox and it is also the recommended way. Follow the instructions given by the script. Running the script will not modify any files outside it's given install path. Downloaded files are temporarily stored in /tmp directory. These can be safely removed after the install has taken place. On Debian based distributions: the install script will use Debian packages. Packages install to default path /scratchbox . On any other Linux distribution: the install script will use .tar.gz files which can be installed to any given path. Scratchbox installation should be separate from host system's tools, e.g. to /scratchbox or /opt/scratchbox. Specify users to be added to scratchbox users with '-u USER' option. You will need to start a new login terminal after being added to the group for group membership to be effective. After the installer has finished you should have a working Scratchbox environment ready in your Linux PC. In a rare situation, if the installer can not work properly in your host Linux system you may have to do a manual installation. This is explained in the chapter 2.2 below. 2.2 Installing Scratchbox Apophis manually If you have installed Scratchbox with the script mentioned in the above chapter 2.1 then you can skip this chapter. You need to install the following packages: scratchbox-core 1.0.7 scratchbox-libs 1.0.7 scratchbox-devkit-cputransp 1.0.2 scratchbox-devkit-debian 1.0.8 scratchbox-devkit-doctools 1.0.6 scratchbox-devkit-maemo3 1.0 scratchbox-devkit-perl 1.0.4 scratchbox-toolchain-cs2005q3.2-glibc-arm 1.0.5 scratchbox-toolchain-cs2005q3.2-glibc-i386 1.0.5 These packages can be downloaded from the scratchbox.org server. http://scratchbox.org/download/files/sbox-releases/apophis/ Detailed instructions how to install Scratchbox in you computer are: http://scratchbox.org/documentation/user/scratchbox-1.0/html/installdoc.html 3. INSTALLING MAEMO 4.0ALPHA SDK ================================ The install script downloads the rootstraps for both ARMEL and i386 and setups the targets inside the Scratchbox. It also downloads the Nokia EUSA licensed binary packages for you. You need to have the Scratchbox Apophis r4 readily installed in your machine before using the installer script. To install the SDK first download the script (from the same directory where you found this INSTALL.txt file) to your host. The name of the script is: maemo-sdk-install_4.0alpha.sh After you have downloaded the script to your local machine just run the maemo-sdk-install_4.0alpha.sh outside the scratchbox environment: $ bash maemo-sdk-install_4.0alpha.sh Running the script starts the installation. NOTE: If you have existing scratchbox targets named SDK_ALPHA_ARMEL or SDK_ALPHA_X86, you need to give the '-y' option for the script to force reset of your targets, like this: $ bash maemo-sdk-install_4.0alpha.sh -y If your scratchbox is installed in a path alternative to /scratchbox, then specify this alternative path using '-s PATH' option. 4. INSTALLING XEPHYR X11-SERVER =============================== You need to install Xephyr X11 server software in your computer after you have installed SB and maemo 4.0 alpha SDK. Xephyr is an X11 server that is used in the Linux host computer. It's purpose is to provide a X11-server for the scratchbox/rootstraps environment. In a practical sense, it provides a device screen for the developer in the Linux host environment so that you can see all the maemo application windows and visuals on your Linux PC. Xephyr is not included in the maemo 4.0 alpha rootstraps and is meant to be installed to the developers host system (outside of the SB). 4.1 Getting Xephyr You can find Xephyr for example from: http://packages.debian.org/unstable/x11/xserver-xephyr On Debian-based Linux distribution you can install Xephyr doing "apt-get install xserver-xephyr" outside scratchbox. 4.2 Xephyr startup parameters Xephyr requires couple of command line parameters so that it can provide a real working window for the maemo environment. Start Xephyr outside the SB with the following parameters: $ Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac -extension Composite In the scratchbox environment the DISPLAY variable has to be set so that it matches to the display setting given above for the Xephyr server (parameter :2 in the above example). [sbox-SDK_ALPHA_X86:~] > export DISPLAY=:2 After the Xephyr server is running in the Linux host you can start the UI framework like this: [sbox-SDK_ALPHA_X86:~] > af-sb-init.sh start This should start the Application Framework inside the Xephyr window. The command will display lots of additional debugging messages and other texts to the screen but you should finally get the UI framework up and running inside Xephyr window. Happy Hacking ! --- END