Main tools in the Symbian development and build toolchain
Article Metadata
This article provides a list of the main tools in the Symbian C++ build toolchain. These are may be called directly from the command line, or via the IDE.
Warning: The Abld/bldmake toolchain described here is deprecated - replaced by "Raptor" (SBSv2). Detailed documentation for SBSv2 is provided here: Raptor Build System. The Raptor Quick Reference article just gives a brief overview of the syntax and how it compares with abld.
The kits supply tools that allow projects to be built from the command line. This is not as easy as using the IDE to control a build, but it does allow for building from batch processes, such as automatic build and test scripts. The following table summarises the command line tools, most of which will be discussed further in the Building, debugging and deploying an application section of this tutorial.
| Tool | Description |
|---|---|
| abld | Build tool used to control all aspects of building a project. It is created in the current directory by the bldmake tool from a component description file—bld.inf. For a command line reference, see the abld command syntax. abld invokes the resource compiler and bitmap converter, described below. |
| bldmake | Build tool that processes the component description file (bld.inf) in the current directory and generates the batch file abld and several build batch makefiles (.make). For command line reference, see the Bldmake command syntax. |
| bmconv | Bitmap converter that takes one or more Windows bitmap files (.bmp) and generates a single Symbian OS multi-bitmap file (.mbm). For command line syntax, see the Bitmap converter syntax. |
| cshlpcmp | Context sensitive help compiler that builds .hlp help files using information defined in a project file, .rtf source file or files, and an optional customisation file. For command line reference, see the CS Help Compiler. cshlpcmp_gui is a GUI for this compiler (not used in S60). |
| epocrc | Combines the actions of passing a resource file through the C++ preprocessor, and then compiling it with rcomp. For command line reference, see Resource builder tool: epocrc. |
| createsis | The createsis tool creates and signs software installation packages (SIS files). It provides a wrapper around lower level installation tools such as makesis and makekeys. |
| makesis | Installation File Generator that creates software installation packages based on source PC/target Symbian OS file locations defined in a .pkg package file. For command line reference, see the Installation File Generator syntax. |
| makekeys | Certification Generator that creates a private/public key pair and issues certificate requests. For a command line reference, see the Certification Generator syntax. |
| makmake | Build tool that takes a .mmp project file which lists the components of the project, and produces a makefile. Uses GNU cpp to evaluate dependencies. Generated headers from resource compilation and multi-bitmap compilation, etc., should be available before makmake is run. For a command line reference, see the makmake command syntax. |
| petran | For Portable Executable Translation. The petran tool converts executables from Portable Executable format (the standard format for executable and object files) to the Symbian OS executable format. It is invoked at the final stage of the build process for ARM targets. |
| rcomp | Resource compiler that compiles source (.rss) resource files into a resource data file (default extension .rsc) which can be used by applications, and a resource header file (.rsg). The operation of the resource compiler is usually wrapped in an abld batch file. For command line reference, see the Resource compiler syntax. |
See Also
Below are lists of tools that are categorised with both Symbian C++ and Tools categories.
- Fundamentals of Symbian C++/Tool Chain . . cwinl
- Listing IMEIs and Capabilities in a DevCert . . ltomuta
- How to use GCCE 4 with Symbian SDKs . . mgroeber9110
- Performance Investigator Analyser Carbide Extension . . hamishwillee
- Using positioning simulation tool with RDA . . bloodredsky
- Detecting memory leaks with HookLogger . . alexodus
- How to localize Symbian application using Get Localization . . pmuilu
- Compiling Symbian context-sensitive help fails with recent versions of Perl (Known Issue) . . kamalakshan
- Devices.exe . . kamalakshan
- Abld.bat . . kamalakshan
- Symbian C++ Development Tools Overview . . rebloor
- Analysing Symbian communications database settings . . Forum Nokia KB
- How do I use the same pkg file for debug and release builds? . . nigel.brown
- Symbian development on Linux and OS X . . storsjo
- Command line tools . . vin2ktalks
- How to get GDR fonts . . jp4symbian
- LeaveScan Tool . . vin2ktalks
- RVCT . . antonypr
- Petran . . antonypr
- Elftran . . antonypr


09 Sep
2009
A Symbian Project can be built from command-line or with the use of IDE. To build a project from command line is difficult from building a project with IDE(Integrated Development Environment).The article has described the procedure to build a project from command-line. It has described the use of all the important commands like abld, bldmake, createsis etc. The article provides essential information for those who have never used command-line to build a project and wants to do it from command line.
The article contains fundamental aspect to build a project and can be useful to beginners. Experienced people who have only used IDE to create their applications can also get critical information from this article.