Symbian OS is an operating system installed in some smartphones. With such a phone can write e-mails, store pictures etc. However probably the most important thing is that Symbian OS is an open platfom meaning that you can download an SDK and write your own software for such a phones.

The native language for Symbian OS is C++ (the Symbian OS phones supports Java J2ME MIDP and there are some tools to support other languages but C++ gives you access to more phone functionality. Most of the software that comes with the phone is written in C++).

Symbian OS contains features you could except from an operating system (e.g. a file system, drivers for Bluetooth, IrDA etc.) but it does not contain a User Interface (UI). Only some basic UI libraries are standard among all Symbian OS phones. Other libraries depends on the type of the device. There are several Symbian OS platforms which provides a UI library, some other usefull libraries and some standard applications. An application that uses features (e.g. the UI) from one platform will need to be ported to run on another one. However it is said that in a typical application 80% of the code is platform-independent. The platforms are:

What's Eclipse

Eclipse is an open source IDE (Integrated Development Environment). Eclipse is best known for it's Java Development Tool but the Eclipse platform itself is language-neutral. There exist plug-ins (called CDT) for C/C++ development (even if not as sophisticated as the Java ones). The CDT produces an executable from a Makefile created manually or managed by the CDT and run it assuming that it is a native executable of the platform it was comilped on. This cannot be directly used to compile a Symbian OS application where ABLD is usually used and the application needs to be started in the emulator. My plug-in fills the gap allowing to use Eclipse for Symbian OS programming and provides some additionals tool like Symbian OS templates in the New Project wizard, Symbian OS-specific error parsers or easy managment of multiple SDKs and Win32 compilers.