Anay Tamhankar's Blog

Icon

Anay's thoughts about software development

mtouch

Savitr Services has collaborated with Olive Design and Communications Pvt Ltd to lauch Mtouch. mtouch is a new approach to designing and developing Mobile Applications.

Details in concept document found here.

Filed under: mobile application development, mtouch

Setting up development environment

An excellent Getting Started booklet is available on the Symbian Developer Network site.

Before you can start developing C++ applications for the Symbian platform, you will require an IDE, one or more SDKs (depending upon your target devices) and notably Perl, installed and configured on your machine.

Hardware Requirements

A desktop or laptop computer with a fast processor (1.5 GHz), 2GB or more of RAM and atleast 2 GB of free disk space. For Windows XP the available space must be on c: drive. (There is a limitation in the build scripts).

Operating System

Officially Symbian supports only Windows XP. (Windows Vista is also not fully supported yet, but workarounds are available and details can be found here).

For developers using Linux or Mac, alternate workarounds are available and details can be found here. I made an attempt to setup Symbian development environment on my linux machine (Ubuntu 8.04) but was not able to successfully set it up. I use Windows XP as my operating system for Symbian development and assume Windows XP OS in all my subsequent blog posts.

IDE

Developers can build their Symbian applications solely on command line. An IDE is not strictly required, but most developers find an IDE environment convinient to code, build, link and unit test their applications.

An IDE called Carbide.c++ is available for free from Nokia. Since Carbide.c++ is built on top of the Eclipse IDE platform, people already used to Eclipse IDE would be in familiar territory.

For Developers familiar with Microsoft Visual Studio development environment,  Nokia used to support Carbide.vs but now has withdrawn support. Carbide.vs is no longer available. The good news is that all versions of Carbide.c++ namely the Express, Developer, Professional and OEM editions are now available for free.

SDKs

To develop applications using C++ on the Symbian platform, you will require access to the APIs. Depending upon the version of the Symbian OS you want to build applications for, you will need to download and install more than one SDKs. I will write a separate blog about choosing the SDK.

For the S60 the details and download instructions can be found here and for the UIQ platform here.

Perl

You need Perl to create and run build scripts for your Symbian application. For Windows you can find Perl installation at the Active Perl site. Note that the latest version of Perl is not supported by the build scripts. You need to specifically download Perl version 5.6.1 build 638.

Installation Steps

Because of the limitation of the build scripts, all development tools need to be installed on c: drive. Also, the path where the tools are installed should not contain “White Spaces”. Therefore do not install the tools under for example “c:\Program Files”. One suggested approach is to create a directory named “Symbian” under c: drive and install everything under “c:\Symbian”. The installation order to be followed is:

  1. Install the Carbide.c++ IDE.
  2. Install Perl.
  3. Install one or more SDKs as per your requirements.

Good to go

Congratulations! Once you have all the tools installed, you are all setup to start Symbian development using C++.

Happy Coding!

Filed under: Symbian

Starting Symbian Development

I will write a series of blogs about developing mobile applications for the Symbian platform. I hope to make these blogs as a series of tutorials for an absolute beginner to start development on the Symbian platform.

The Symbian platform and the API it exposes are written in C++ programming language. The C++ in question here is a variant which is optimized to conserve battery life and memory. Therefore all programming is event based and the CPU is powered down when not it use.

The pre-requisites for starting Symbian development are a good understanding of C++ programming language and the object oriented paradigm. If you do that have exposure to C++ but have extensively written code in Java, and are comfortable with the C++ syntax, I think you are good to go.

Development for the Symbian platform has a fairly steep learning curve. There are a lot of good resources available on the Internet to help the developer. Symbian Developer Network and the Nokia Forum would be the premier sources of information.

These series of blogs is my feeble attempt to simplify the learning curve as much as I can. I will document all the gotchas and Symbian specific nuiances which I encountered and spent time on them. Hopefully these will speed up your development.

Happy Coding!

Filed under: Symbian

Recent Comments