!!! This page is WIP !!!

WebOS PDK Installation

Scratchbox is no cross compiler environment! It runs a mixture of native applications and target applications with qemu. So can follow the regular ws4d-gsoap installation steps. You don't have to use the cross compiler toolchain-file mechanism!

See  http://www.webos-internals.org/wiki/WebOS_Internals_PDK for a guideline how to install the WebOS PDK on ubuntu linux. The following steps are done on the basis of this tutorial on an Ubuntu Maverick Meerkat system.

Install dependencies:

$ sudo apt-get install git-core build-essential curl unzip autoconf subversion libtool wget pkg-config gettext fakeroot ant xsltproc \
  intltool uboot-mkimage patchutils flex bison libssl-dev libz-dev libbz2-dev help2man texinfo scratchbox2 qemu-kvm-extras xar autopoint

On Ubuntu Maverick Merkat xar is not available in the software repositories. You can install the packages from luci lynx:

See  https://launchpad.net/ubuntu/+source/xar for further architectures.

Fix mmap errors:

$ sudo -s
$ echo "vm.mmap_min_addr = 4096" > /etc/sysctl.d/mmap_min_addr.conf
$ /etc/init.d/procps restart
$ exit

Start setup:

sudo mkdir -p /srv/preware
cd /srv/preware
sudo chmod 777 .
git clone git://git.webos-internals.org/preware/cross-compile.git
cd cross-compile
make toolchain

This takes a while and will ask you for your superuser password.

Verify sh shell is bash:

$ sudo dpkg-reconfigure dash

You will be asked if you want to "Install dash as /bin/sh?". Select "<No>" and bash will be used. Rerun the command to verify:

$ ls -l /bin/sh
lrwxrwxrwx 1 root root 4 2010-12-19 13:52 /bin/sh -> bash

Setup Scratchbox:

$ cd /srv/preware/cross-compile/toolchain/arm-2007q3/arm-none-linux-gnueabi/libc
$ PATH=/srv/preware/cross-compile/toolchain/arm-2007q3/bin:${PATH} sb2-init -c /usr/bin/qemu-arm armv7 arm-none-linux-gnueabi-gcc

This takes a while.

$ cd /srv/preware/cross-compile
$ make stage

This takes a while.