Carbide.c++

Carbide.c++
Developer(s) Nokia, Symbian Foundation
Stable release 3.2
Operating system Microsoft Windows
Platform Symbian OS
Type Integrated Development Environment
License Free/Open Source
Website Nokia Carbide Page

Carbide.c++ is a software development tool for C++ development on Symbian OS. It is used to develop phones that use the OS, as well as applications that run on those phones. It is based on the Eclipse IDE platform enhanced with extra plug-ins to support Symbian OS development. The product is provided by the Symbian Foundation under an open source model. In April 2009, Nokia transferred Carbide.c++ and many other software developer tools to the Symbian Foundation. Members of the Symbian community now manage and contribute code to the Carbide.c++ product.

Tool packages

Carbide.c++ is provided by the Symbian Foundation in two different tool packages.

Both the ADT and PDT are basic installers that include Carbide.c++, several Eclipse-based plug-ins and several stand-alone tools.

ADT/PDT v1 contains Carbide.c++ v2.0.4
ADT/PDT v2 (Q4 2009) is targeted to contain Carbide.c++ v2.2

Technology

Carbide.c++ is based on the latest versions of Eclipse IDE and Eclipse CDT extended with Symbian OS -specific features. Currently it supports the WINSCW x86 C++ compiler found in CodeWarrior for production of emulator binaries. For target binaries it supports GCC, and ARM RVCT compilers (sold separately). The WINSCW and GCC compilers are actually provided in the SDK and not explicitly included in the Carbide IDE.

Carbide.c++ has branched very few parts of CDT - nearly all of it is contained within added plug-ins added on top of Eclipse. The few branches mostly relate to the different semantics of the CodeWarrior debugger engine, compared to GDB which is what Eclipse previously supported. Because Carbide.c++ is very similar to a standard Eclipse installation, it can still be used for other types of development such as Java or Perl (provided the correct plug-ins are installed using Eclipse's self-update mechanism). Similarly, it ought to be possible to produce a product with similar functionality to Carbide.c++ by moving the Carbide.c++ plug-ins into a standard Eclipse installation; this is not currently a facility offered by Nokia.

Carbide.c++ supports the Symbian Build System v1 and v2 (aka Raptor). The former is a perl-based build system and the latter is built using Python and supports the next generation Symbian OS operating systems. The main advantage of supporting SBSv1 and v2 in Carbide is users can create command-line builds in parallel with IDE builds and not have to manage two different workspaces. The disadvantage of SBSv1 is dependency checking is automatic on every build and re-building large projects to take a while. Carbide.c++ built in some short cuts (starting with v1.3) to speed up rebuilds.

Early versions of Carbide (v1.0, 1.1) supported a different build method which had many problems.

History

Carbide.c++ development tools family was created to replace CodeWarrior for Symbian OS as the primary development environment for Symbian OS. Adoption of the tool has been slow but CodeWarrior usage is diminishing since the older tool no longer supports the latest changes to Symbian OS and S60 platforms.

Carbide was provided as three commercial products and one free product. Today the product is part of the Symbian Foundation offering and is completely free.

The products ranged in price from 300 to 8000 Euros depending on features set and licensing model.

Carbide had a slow reception to the Symbian community. Developers are generally not fond of moving to new tools and early versions of Carbide had problems. There were several frequently cited complaints - for example, lack of Symbian-OS-style code indenting, lack of an easy "find in files" facility, speed of import of Symbian OS build files (MMPs), and difficulties using on-device debugging. In addition, the much-anticipated Managed Build System did not work properly - rather than offering a true incremental build, it frequently deleted everything and started again. Otherwise the reception was warm - the development environment is preferred to CodeWarrior, the IDE is based on Java so there are some speed and memory concerns, the IDE is often slow and has a pretty big memory foot print, all trademarks of the Java environment.

Carbide.c++ has made steady progress in addressing issues brought up by the developer community. CodeWarrior usage has dropped off significantly due to improvements in Carbide and CodeWarrior’s lack of support for the newer versions of Symbian OS.

Using Carbide.c++

To do Symbian OS C++ development you need the Carbide.c++ IDE and a Symbian OS-based SDK. This SDK contains the emulator and also the libraries and header files required for Symbian OS development. Development kits are available at Forum Nokia and the Symbian Foundation web sites. Please note that these kits may have different names reflecting additional capabilities (Cust kits, Developer Kits, PDK, iSSK).

References

    External links

    This article is issued from Wikipedia - version of the Sunday, April 05, 2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.