Forum Nokia
Nokia Connecting People

Login Register

 

Home: Resources: Technologies: Open C/C++

Open C/C++

With the availability of Open C/C++, the S60 platform — the world’s most popular smartphone platform — is now open to a huge number of developers.

Delivering an extensive range of standard C and C++ APIs, this technology is ideal for porting desktop applications to S60 devices, as well as creating application engines and middleware.

The first additional library, the Real-Time Graphics and Audio (RGA) APIs, extends the options for standard C/C++ developers aiming to create rich user experiences with enhanced audio and graphic effects.

Documentation
Tools
Discussion


Tips for Selecting Open Source Code for an Open C Project
Read this article to learn which aspects you should consider in your selection of open source code when porting it to the S60 platform with Open C.


Download Open C for S60: Increasing Developer Productivity
This white paper explains how Open C facilitates tapping the full power of the world’s most successful smartphone platform.






What are the benefits?

With Open C/C++ and RGA, the S60 platform becomes a viable development option for a wide range of developers.

The APIs delivered in Open C/C++ make it easy to port existing desktop software to the S60 platform, allowing developers to leverage their investment in code and development skills to take advantage of the growing market for S60 applications. The APIs also help developers who lack knowledge of the Symbian OS and S60 APIs to contribute application engines and middleware to new S60 application projects.

With RGA, Open C/C++ projects can also add UIs with rich audio and graphics to their applications. Developers can write complete applications — especially games — without reference to Symbian OS or S60 APIs.

It is important to note that using the Open C/C++ APIs does not put developers at a disadvantage: The performance characteristics closely match those of similar native S60 APIs.

Open C/C++ and RGA software architecture

What are the limitations of Open C/C++ and RGA?

Open C/C++ and RGA do not provide standard C/C++ APIs for the S60 UI or the S60 application engines, such as calendar, contacts, and messaging applications. To build applications with a standard S60 look and feel, developers will have to use S60 APIs or employ Python for S60. Similarly, to access the standard S60 application engines, Symbian OS and S60 APIs will be required.

What API libraries do Open C/C++ and RGA deliver?

The libraries provided by the Open C/C++ plug-ins include:

  • C libraries (Open C) that deliver functions from nine well-known standard POSIX and middleware C libraries, including libc, libdl, libpthread, libm, libz, libcrypt, libcrypto, libglib, and libssl.


  • C++ libraries (Open C++) that incorporate the IOStreams, STL, and Boost libraries.


  • RGA APIs that provide a set of C++ libraries — for selected devices — that offer features for the creation of UIs with rich audio and graphics for applications such as games.

For more information, see the Open C/C++ Plug-ins for S60 3rd Edition features page »

On which Nokia devices can I run Open C/C++ applications?

Open C/C++ applications and middleware can be run on all S60 3rd Edition devices. Devices based on S60 3rd Edition, Feature Pack 2 have the Open C APIs delivered in their firmware. For all other devices, the Open C/C++ Plug-ins for S60 3rd Edition delivers device plug-ins for Open C and Open C++.

See specifications for S60 3rd Edition devices here »

The RGA APIs are available for selected S60 3rd Edition devices. For more information, see the Open C/C++ Plug-ins for S60 3rd Edition features page. The Open C/C++ Plug-ins for S60 3rd Edition includes the RGA device runtime plug-in.

Are there any examples of the successful use of Open C/C++?

Forum Nokia has prepared several case studies that illustrate the successful use of Open C in porting desktop and server applications to S60. For more information, you can read:

Back to top

Learn how to
download applications

java symbian_os s60 maemo c++

Community highlights

Discussion thread of the week

How to run an EXAMPLE...

Champion of the month

Mika Raento
Read more about
Mika on the
Champions web site.

Newsletter sign up

Privacy policy   Archives

Press

Events

Forum Nokia feed

  • Latest devices
  • Latest documents
  • Latest tools
  • Latest blog entries

Terms & Conditions | Privacy policy | Site map | Developer feedback | © Nokia 2008


RDF Facets:


qdcZcoverageQUxhttpE3AE2FE2FforumE2EnokiaE2EcomE2FX
qdcZtypeQUqfnZE45E78cludedFromGeneralE4CistingsQ
qdcZtypeQUqfnTypeZE52esourceQ
qdcZtypeQUqfnTypeZWebpageQ
qdcZtypeQUqmarsZManagedE52esourceQ
qdcZtypeQUqwebZInformationE52esourceQ
qdcZtypeQUqwebZPageQ
qdcZtypeQUqrdfsZE52esourceQ
qfnZdistributionQUxhttpE3AE2FE2FforumE2EnokiaE2EcomE2FX
qfnZtypeQUqfnTypeZE52esourceQ
qfnZtypeQUqfnTypeZWebpageQ
qfnZtypeQUqmarsZManagedE52esourceQ
qfnZtypeQUqwebZInformationE52esourceQ
qfnZtypeQUqwebZPageQ
qfnZtypeQUqrdfsZE52esourceQ
qmarsZlanguageQUxhttpE3AE2FE2FswE2EnokiaE2EcomE2FlanguageE2D1E2FenX
qrdfZtypeQUqfnZE45E78cludedFromGeneralE4CistingsQ
qrdfZtypeQUqfnTypeZE52esourceQ
qrdfZtypeQUqfnTypeZWebpageQ
qrdfZtypeQUqmarsZManagedE52esourceQ
qrdfZtypeQUqwebZInformationE52esourceQ
qrdfZtypeQUqwebZPageQ
qrdfZtypeQUqrdfsZE52esourceQ