Register with Forum Nokia now and you'll enjoy the full benefits of the Forum Nokia membership.
Register LoginInnovation Series Videos highlighting Forum Nokia developers
Felipe Andrade
Read more about Felipe on the Champions website.
Ovi Store Publisher Reporting
July 08, 2009
9 a.m. New York, 2 p.m. London, 4 p.m. Helsinki
Ovi Store Publisher Reporting
July 08, 2009
11 a.m. San Francisco, 2 p.m. New York
Nokia World 09
September 02, 2009
Stuttgart, Germany
Adobe MAX 2009
October 04, 2009
Los Angeles
International CTIA WIRELESS I.T. & Entertainment 2009
October 06, 2009
San Diego, California
![]() Multimedia application with UPnP stack port from Wipro |
The Open C/C++ Plug-in provides you with a comprehensive range of standard C and C++ APIs. Even if you have limited or no experience with Symbian C++ development, you’ll find that Open C/C++ makes it easy for you to create middleware and application engines for S60 devices. The Open C/C++ libraries provide a Linux-like, vendor-neutral C/C++-programming interface to several core functions of S60 devices. |
Open C/C++ provides familiar standard C and C++ libraries that enable the reuse of existing code so that you can focus development efforts on maximising the unique aspects of mobility within applications. By reducing the effort required to port existing components (for example, open source software and PC applications) to the S60 platform, Open C/C++ lets you make use of your PC application and open source code. Because you don’t have to create S60 C++ code from scratch, you benefit with both time-to-market and quality advantages.
To make use of the Open C/C++ Plug-in, you should already have an understanding of development using standard C/C++ libraries. No specific understanding of the Symbian C++ and S60 APIs is required unless you wish to use the S60 APIs to build a standard S60 user interface for your application. An understanding of the Symbian OS build tools is necessary to package any applications or middleware based on Open C/C++ for deployment to an S60 device.
Before you begin writing code, take the opportunity to get an overview by reading the document Open C for S60: Increasing Developer Productivity. This white paper describes how Open C increases your efficiency in developing products based on Symbian OS, allowing you to draw on existing code and components as parts of development projects.
And if you haven't already done so, read the Open C/C++ technology page.
Two versions of the Open C/C++ Plug-in are available: Open C/C++ Plug-in 1.0 works with S60 3rd Edition SDKs and devices, and Open C/C++ Plug-in 1.5 Beta provides additional support for S60 5th Edition SDKs and devices. Both plug-ins include the Open C and Open C++ headers and libraries that enable application development and testing on a PC, as well as SIS files for S60 devices that enable the execution of software. The plug-ins also include example applications and comprehensive documentation of the APIs.
Note that Open C is integrated into S60 3rd Edition, Feature Pack 2, and Open C and Open C++ are integrated into S60 5th Edition. However, you may want to update the SDKs and devices with the new plug-ins and DLLs.
You’ll need the hardware and software necessary for the installation of your chosen S60 SDK, as well as up to 109 MB of additional disk space for the plug-in.
Once you've installed the SDK plug-in, you can access the Open C/C++ S60 device DLL installation files, documentation, and example applications.
Development with Open C/C++ can be undertaken at the command line or by using Carbide.c++.
At this point, you don't need to program anything — you simply need to become familiar with the development process and tools by building and running one of the Open C/C++ example applications.
Watch the Getting Started with Open C video, which provides an introduction to the tools and processes for using Open C. The video starts by showing how to download and install the plug-in. (Note that the current Open C/C++ plug-ins provide an installer so there's no need to manually extract the contents to the SDK root directory.) The video next illustrates how to use Carbide.c++ and the process of importing, building, and running an application that uses Open C. Finally, the video demonstrates how to create a device build of the application and how to install Open C DLLs and the application on a device.
Open C/C++ applications are supported on all S60 3rd Edition and later devices. However, any device you choose needs to have the DLLs installed.
Open C is a set of standard C libraries that provide a vendor-neutral (or Linux- and Unix-like) C programming interface to certain core functionality of the S60 platform. The Open C libraries are based on P.I.P.S. is POSIX on Symbian OS (P.I.P.S.), with five additional open source C libraries. The C libraries in Open C are libc, libcrypt, libcrypto, libdl, libglib, libm, libthread, libssl, and libz.
For more information, visit the Open C/C++ features page.
Open C++ is a set of standard C++ libraries that provide a vendor-neutral (or Linux- and Unix-like) C++ programming interface to certain core functionality of the S60 platform. The libraries include IOStreams, STL, and Boost.
For more information, visit the Open C/C++ features page.
Note that there are no UI libraries for Open C/C++. However, you can create a GUI using Symbian C++ and S60 C++ APIs, Python for S60 (a scripting language mainly targeted at prototyping), or Qt for S60. Please note that Qt for S60 is a technology preview version that is not yet designed for commercial applications. The development of hybrid applications is described in the S60 Open C API documentation.
You should also take a look at the Open C code examples (published on the Open C documents and code examples page), several of which include code for a GUI. Each example provides porting notes as well.
Open C/C++ documents, code examples, videos, and webinars
Open C/C++ articles in the Forum Nokia Wiki
Open C/C++ technical solutions and known issues in the Forum Nokia Knowledge Base
From a sales and distribution perspective, applications and middleware created with the Open C/C++ APIs are essentially the same as applications written using the native Symbian OS and S60 APIs.
Before you try to market any software built using Open C/C++, you should consider securing Symbian Signed certification for your application. Symbian Signed certification assures sales channels and mobile consumers that an application has achieved a high level of quality and comes from a reliable source. As such, Symbian Signed opens up sales channels and makes applications more appealing to mobile consumers.
Read more about the Symbian Signed program
Forum Nokia Open C/C++ plug-ins go-to-market links: