== Summary == This is just to describe the experiences of installing the Maemo SDK on Ubuntu. 1. Install the scratchbox 1.0 1. Edit the /etc/apt/sources.list and add: {{{ deb http://scratchbox.org/debian ./}}} and optional: {{{ deb http://ftp.fi.debian.org/debian/ sarge main deb-src http://ftp.fi.debian.org/debian/ sarge main}}} 1. Install the following packages (development included): {{{ sudo aptitude install scratchbox-core scratchbox-libs scratchbox-devkit-debian\ scratchbox-devkit-perl scratchbox-devkit-doctools scratchbox-toolchain-arm-gcc3.3-glibc2.3\ scratchbox-toolchain-i686-gcc3.3-glibc2.3 scratchbox-toolchain-arm-gcc4.01-glibc2.3 scratchbox-devkit-cputransp}}} 1. It will install: {{{ The following NEW packages will be installed: scratchbox-core scratchbox-devkit-debian scratchbox-devkit-doctools scratchbox-devkit-perl scratchbox-libs scratchbox-toolchain-arm-gcc3.3-glibc2.3 scratchbox-toolchain-i686-gcc3.3-glibc2.3 scratchbox-toolchain-arm-gcc4.01-glibc2.3 scratchbox-devkit-cputransp}}} 1. Create the user: {{{ sudo sb-adduser usernam}}} 1. Before you login to the scratchbox, make sure you correct the nsswitch.conf issue that will block you from getting the apt-get working. The way to do it is to edit from the file /scratchbox/etc/nsswitch.conf and make sure that the line with hosts looks like this: {{{ hosts: files dns}}} 1. We might need to install the libgtk2.0-dev which will install also: {{{ The following NEW packages will be installed: apt-utils binutils coreutils cpp cpp-3.3 debconf debconf-i18n debconf-utils debianutils defoma file fontconfig gcc gcc-3.3 hicolor-icon-theme libacl1 libatk1.0-0 libatk1.0-data libatk1.0-dev libattr1 libc6-dev libdb4.2 libexpat1 libexpat1-dev libfontconfig1 libfontconfig1-dev libfreetype6 libfreetype6-dev libft-perl libgdbm3 libglib2.0-0 libglib2.0-data libglib2.0-dev libgtk2.0-0 libgtk2.0-bin libgtk2.0-common libgtk2.0-dev libjpeg62 liblocale-gettext-perl libmagic1 libnewt0.51 libpango1.0-0 libpango1.0-common libpango1.0-dev libpng12-0 libpopt0 libtext-charwidth-perl libtext-iconv-perl libtext-wrapi18n-perl libtiff4 libttf2 libx11-6 libx11-dev libxcursor1 libxext-dev libxext6 libxft-dev libxft2 libxi-dev libxi6 libxrandr2 libxrender-dev libxrender1 libxv-dev libxv1 linux-kernel-headers perl perl-base perl-doc perl-modules pkg-config render-dev slang1a-utf8 ttf-bitstream-vera ucf whiptail x-dev x-ttcidfont-conf xfree86-common xlibs-data xlibs-static-dev xutils zlib1g zlib1g-dev}}} 1. Login to scratchbox: {{{ /scratchbox/login}}} 1. Create your target as described (need more updates here) 1. Edit your scratchbox target /etc/resolv.conf to be identical with the system /etc/resolv.conf 1. For maemo 3.0 you will also need to install on your system the following packages: {{{ sudo aptitude install scratchbox-toolchain-cs2005q3.2-glibc-arm scratchbox-toolchain-cs2005q3.2-glibc-i386}}} 1. Download on your system the file [[http://repository.maemo.org/stable/bora/maemo-sdk-install_3.1.sh]] 1. Run the file on your system (not on the target): {{{ bash ./maemo-sdk-install_3.1.sh}}} 1. After you install everything you login on the scratchbox as instructed at the end (i.e., sb-conf select SDK_ARMEL, sb-conf select SDK_X86). Install the extras with: {{{ fakeroot apt-get install maemo-explicit}}} which will result in: {{{ Recommended packages: libimengines-plugins-western The following NEW packages will be installed: hildon-control-panel-navigatorapplet hildon-input-method hildon-input-method-l10n-engb hildon-input-method-l10n-mr1 id3search ke-recv-l10n-engb ke-recv-l10n-mr1 libconbtui0 libcontact-importexport libhildon-input-method-framework-sdk2 libhildon-input-method-plugins-sdk-western libhildon-input-method-ui-sdk2 libimengines3 libmetalayer0 libmissioncontrol libmissioncontrol-dev libogs1.2-1 libosso-abook libosso-abook-dev libosso-certman1 libosso-filemanager-interface libosso-rtcom libosso-rtcom-utils libosso-video-invitation maemo-explicit maemo-select-menu-location mission-control mission-control-filters osso-addressbook osso-addressbook-l10n-engb osso-addressbook-l10n-mr1 osso-applet-certman osso-applet-tasknavigator-l10n-engb osso-applet-tasknavigator-l10n-mr1 osso-chat-ui-l10n-engb osso-chat-ui-l10n-mr1 osso-contact-plugin osso-contact-plugin-l10n-engb osso-contact-plugin-l10n-mr1 osso-help-ui osso-speeddial osso-video-invitation-l10n-engb osso-video-invitation-l10n-mr1}}} 1. Install also the xephire on the system (not on target): {{{ aptitude install xserver-xephyr}}} 1. Launch the Xephyr as DISPLAY 2 in the system (outside scratchbox): {{{ Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac}}} 1. Goto your scratchbox target (ARMEL) and login and set the environment variable for DISPLAY: {{{ export DISPLAY=:2}}} 1. Launch the UI framework (from the target): {{{ af-sb-init.sh start}}} 1. The end. == References == * [[http://www.maemo.org/platform/docs/how-to.html]] * [[http://www.scratchbox.org/documentation/user/scratchbox-1.0/html/installdoc.html]]