Saturday, January 22, 2011

Symbian OS tutorial

Symbian is an operating system derived
from the Epoc operating system. Epoc
was developed by Psion for their
handhelds in the 80's. Symbian is an
evolution designed to be used in
mobile phones, and comes to real devices in different flavors. More precisely, Symbian Inc develops the base operating system and licenses
it out to phone manufacturers. Vendors
then build a user interface on top of the
base operating system. They can also
customize (and often do) the operating
system for a specific purpose; the bundle of the operating system plus the
user interface is shipped, with the
hardware to be sold on the market.
Currently the most widespread is the
Series60 platform, used by many Nokia
phones like the Nokia 6600 and many many other models. There also exists the UIQ platform, powering the Sony Ericcsson P800/
P900/P910i (see below the second
image) and the Motorola A1000/A1010. Also there are other flavors, like the
Series80 that powers the Nokia
Communicator series (Nokia 9500 and others) and the Series90, used currently
only by the Nokia 7710. There are rumors hovewer Series90 will fold in to
the Series 60 platform in the
foreseeable future.
Note that since there are MANY
versions of each combination OS/UI,
there is a different SDK for each combination. For example we can
enumerate the SDK for Series60 version
6.1, 7,0s, 8.0, 9.0 etc, and the SDK for
UIQ version 2.0, 2.1 etc.
You have to build application for
specific devices using the appropriate SDK of the correct version of the target
phone. Since our focus is on the Series 60
platform, it is useful to understand
which SDKs are available. This page clarifies a lot of things.
Basically we have editions of the SDK,
with enhancements, named Feature
Pack. The Nokia site enumerates the
following: SDK for 2nd Edition, FP 3, beta (FP =
feature pack) SDK for 2nd Edition, FP 2 SDK for 2nd Edition, FP 1 SDK for 2nd Edition SDK for 1st Edition, FP1 SDK for 1st Edition Unfortunately, for each combination of
edition and feature pack there are some
variants, depending on the target IDE
(Microsoft, Borland or CodeWarrior) to
be used, so the complete picture is a
mess. There is always a Command Line version (not bound to any IDE).
In this tutorial will stick with the plain
SDK, NOT the customized version,
although I will show you how to use it
(the PLAIN version, I repeat) with the C
++BuilderX IDE.Let's start by learning to install a free
but complete development
environment. Since my primary target
phone is the old (but good) Nokia 3660
I will depict how to install a complete
environment for "Symbian 6.1 Series 60 SDK 1.2" based on the C++BuilderX 1.5.
However, it is not very different to
install newer versions.
This is perhaps the best solution
available for free, and is complete with
a REAL IDE, with code completion, compilation and debugging support. It
is NOT easy to set up, since you have to
collect a lot of stuff from here and there.
There are many tutorials available on
the net, but definitely none of them is
complete or clear enough (in my opinion), which is why I am showing
you the way that worked for me.


DOWNLOADING

The Nokia SDK: Go http://www.forum.nokia.com/ main/0,,034-4,00.html
Choose "1St Ed FP1 MS&Borland", you
will download s60_sdk_v1.2.zip Choose "2nd Ed Visual Studio & .NET",
you will download: s60_sdk_v2.0.zip Choose "2nd Ed FP1 MS&Borland", you
will download: S60_SDK_v2.1_NET.zip The Borland IDE: Go http://info.borland.com/survey/ cbx15_mobile_edition.html
Register to Borland and ask for a key,
then download the CBuilderX 1.5 Microsoft Tools: Download the free VisualC++ Toolkit
from:
http://msdn.microsoft.com/visualc/
vctoolkit2003/
Download the Debugger from:
http://www.microsoft.com/whdc/ devtools/debugging/installx86.mspx
Download NMAKE from:
http://download.microsoft.com/
download/vc15/patch/1.52/w95/en-us/
nmake15.exe Additional Components: You need Active Perl 518. It is here:
http://ftp.activestate.com/ActivePerl/
Windows/5.005/Intel/APi518e.exe You need Java Runtime 1.3.1. It is
here: http://java.sun.com/j2se/1.3/
download.html
Visual C++ does not provide a separated
dumpbin or lib utility. This function is
embedded in the 'link' command;
unfortunately the SDK requires them. A solution is a wrapper to call 'link' as
'dumpbin' or 'lib'. Download these ones: dumpbin.exe lib.exe What's Next? Now that we have downloaded all the
required stuff, we can go on to the
installation. First, we install Microsoft
tools, then the C++BuilderX, and lastly
the Command line version of the SDK.
Once we have completed this procedure, we can check if everything is
working properly.

No comments:

Post a Comment