Getting started with Tizen

The Tizen source and SDK were unleashed yesterday, and I’ve just had a first glance. The documentation is a bit all over the place, so here’s some notes on getting up and running. For more information on what’s going on with Tizen, read my blog post on Tizen and on platform community.

~

The platform build page at https://source.tizen.org/platform_sbs_install.html states Tizen requires Ubuntu 10.04 or higher. The SDK page at https://developer.tizen.org/sdk.html caps Ubuntu at version 11.04, as does https://developer.tizen.org/sdk_install.html. In reality, the SDK installed on 11.10 without any problems.

Installing the SDK

The SDK page says “To install the SDK you will need to have root privileges” but does not use sudo to run the installer. You will be prompted for the root password during the install.

The following steps worked for me:

  • Install Virtualbox.
  • Install Ubuntu 11.04 (or risk 11.10)

apt-get install git

sudo add-apt-repository ppa:ferramroberto/java
sudo apt-get update
sudo apt-get install sun-java6-jdk sun-java6-plugin
  • Get the SDK working by running through: https://developer.tizen.org/sdk.html. Install the Tizen SDK prerequisites. Because Tizen loves you, they kindly put commas between package names so you can’t copy-paste them. Here’s the list all ready to go:
sudo apt-get install qemu-kvm binutils-multiarch debhelper fakeroot realpath libsdl-gfx1.2-4 gettext procps xsltproc libdbus-1-3 liblua5.1-0 libexif12 libcurl3
  • Download and install the SDK:
wget https://developer.tizen.org/download/tizen_sdk.bin
chmod +x tizen_sdk.bin
./tizen_sdk.bin
  • The installer will exit (“Installing ….. OK”, “Done”) before the GUI installer has completed. Don’t worry about it.
  • Go through the install process. Note the SDK needs 1.2GB to install. The installer is only 4.6mb, so expect some downloading.
  • First time around, my installation failed with the following error:

(Un)Installation failed

Cannot connect to server. Please check your network status or use command line option ‘-proxy <address>:<port>’ for using proxy.

It’s recommended to uninstall all and install again.

The install is wanting to talk to http://112.106.1.254/tizensdkpackages/InstallManager/Linux/ and http://112.106.1.254/tizensdkpackages/current/linux-packages/ but those both work fine.

The second time around it worked (and good grief, the tizen download server is fast … or not very busy. I got 1.52MB/s).

Some random notes about the SDK:

  • the open source license is alphabetical, so the first thing you’ll see on the list of software components is ‘Android Open Source Project(ADT DDMS, adb)’.
  • The SDK license is actually a Samsung SDK license: TIZEN SOFTWARE DEVELOPMENT KIT (“SDK”) LICENSE AGREEMENT […] A LEGAL AGREEMENT BETWEEN YOU AND SAMSUNG ELECTRONICS CO., LTD. (“SAMSUNG”).
  • The Open Source SDK components are at http://developer.tizen.org/download/tizenopensdk.tar.gz but that basically consists of valgrind, qemu, the emulator kernel and oprofile.

Installing Scratchbox Build System (SBS)

This works pretty much as advertised – though note that the first step 1 (installing package dependencies) conflates two separate lines, and should read:

sudo apt-get update

followed by:

sudo apt-get install dpkg-dev pkg-config uuid-dev cpp gcc gcc-multilib libarchive-dev liblzo2-dev zlib1g-dev libxml2-dev automake autoconf realpath

Or you could just do:

sudo apt-get update && sudo apt-get install dpkg-dev pkg-config uuid-dev cpp gcc gcc-multilib libarchive-dev liblzo2-dev zlib1g-dev libxml2-dev automake autoconf realpath

There’s IP addresses hard-coded all over the place: in the SDK install, in the SBS documentation, in the SBS install script, and in the SBS utilities themselves, for example:

# The server with all required APT repositories
_APT_SERVER="${SBS_APT_SERVER:-112.106.1.254}"

This is extremely brittle, and I expect there to be breakages. It’s pretty poor practice and I would have preferred that the ‘source.tizen.org’ CNAME was used more consistently. That IP belongs to Samsung, by the way.

Where there is a domain name configured, it’s www.tizendev.org, which does not resolve to a public machine:

./install-sbs 
SBS install script
git version: 08ecba2
last commit: Date:   Wed Jan 11 16:39:11 2012 +0900
For help see: http://www.tizendev.org

Note that you’ll end up with SBS stuff in ${HOME}/sbs-install and ${HOME}/sbs, which may or may not annoy you.

As per the instructions, ~/sbs-install/bin/sbs -A i386 -c will give you a working i386 Scratchbox target. It’s great to see at the end of the first run:

sbs: All done.  Build environment was successfully setup at /home/savs/sbs

Progress!

~

On the whole, kudos to Samsung (and Intel, and Tizen) for getting the code out there. And especially for having a reproducible build system with clear instructions. This is a huge leap forward for Tizen, and a critical first step.

This entry was posted in Mobile Tech, Planet, Research and tagged , , , , , , , , . Bookmark the permalink.