Kits Q&As
From Symbian Developer Community
Contents
|
What's in my toolkit?
The ADT contains the Carbide.c++ IDE (only). The PDT also includes the Carbide.c++ IDE, albeit with more functionality (needed for device creation). The PDT has a number of other tools, including the SBSv2 build system (Raptor).
As the contents of the kits changes slightly with every release these are documented on a per-release basis in the kit release notes (available through the Tools and Kits kits download pages).
The most recent PDT/ADT release notes (at time of writing) are linked below:
- PDT v1.4 Release Notes
- ADT v1.4.0 Release Notes
- Carbide 2.3.0 Release Notes (includes comparison of Carbide Features in ADT & PDT V1.4)
What essential tools are not in my toolkit?
The PDT and ADT contain almost all the tools that are essential for device and application development, respectively. Note that you will also need Perl and Python to install the PDT itself (you only need Perl to install the ADT).
The exceptions are the following tools:
- Compilers to build for target hardware (one of):
- GCC-E 3.4.3 Compiler: For applications only - free in Symbian SDKs.
- RVCT 2.2: For building devices or applications. Licenced from vendor ARM (there is a free licence for non-commercial use by small companies).
How do I support multiple kits
SDK developers typically use the devices.exe tool to query for which kits are in the system and to change the default kit used when tools are called from the command line. Developers using the PDK and/or the Raptor toolchain set the current kit using the windows EPOCROOT variable. While it would be convenient to use devices.exe for both kits and toolchains, it is not understood by raptor and has not been contributed to the Symbian platform.
The devices.exe tool stores the location of all kits on the system and information about the default kit in an xml file (C:\Program Files\Common Files\Symbian\devices.xml). It is installed with most SDKs.
To query all devices on the system:
C:\>devices S60_5th_Edition_SDK_v1.0:com.nokia.s60 - default S60_3rd_MR:com.nokia.s60 S60_3rd_FP1:com.nokia.s60
To set the default device use "setdefault": devices -setdefault @S60_5th_Edition_SDK_v1.0:com.nokia.s60 To get more help on syntax:
devices -help
SDK users can also specify the current kit using the Windows EPOCROOT variable (discussed below). The value in the EPOCROOT will supersede the current default device setting. Developers using the Raptor toolchain will also need to set the EPOCROOT as Raptor does not use the devices.exe toolchain.
PDK developers set the current kit using the Windows EPOCROOT environment variable. This variable specifies the location of the /epoc32/ directory in the required kit:
set EPOCROOT=\Kit location\which\contains the epoc32 tree\
To change kits it is possible to change the variable to a new directory path. However it is more common to subst/map all kits to the root of their own drives, and set the EPOCROOT to the root:
set EPOCROOT=\
The command line then uses the correct tools for the current mapped drive/kit.
The EPOCROOT has a few restrictions when used with the abld toolchain. For abld:
- it must end in a slash (backwards or forwards depending on platform)
- (on Windows) it mustn't contain a drive letter
- (on Windows) it mustn't be a UNC path
- it must be an absolute path
Raptor is more flexible:
- Raptor works with either backslash or no backslash
- Drive letters are completely optional and not harmful if present.
- Relative paths are supported (to be checked)
Kits setup
Change in policy at ActiveState
On February 2nd, 2010, ActiveState changed their policy about supplying old versions of Perl and Python, and removed the versions of Perl and Python which have been used by the Symbian Platform tools for many years.
The Symbian Foundation has not yet upgraded to the newer versions, but will do so in the coming weeks: it is expected that a very small number of defects will be found arising from Perl scripts which don't work with newer versions of Perl, but probably not any problems with moving to the newer version of Python.
How do I install Perl on my C++ development PC?
ActivePerl is required in order to build Symbian C++ code. In addition, some Perl extensions are needed for device creators.
Install Perl
Perl installation files can be downloaded from ActiveState - we suggest you use the most recent version (at time of writing that is Perl 5.10.1). Simply download and double click on the file to install. You can install the package wherever you like.
To verify the installation, see How do I test that my development environment is set up correctly?#Perl.
| Note Some Symbian tool kits and SDKs (including the Application Developer Toolkit and Product Development Toolkit) will issue a warning if you have not installed ActivePerl 5.6.1 build 638 (no longer available from ActiveState). The warnings may be ignored:
|
Install Perl Extensions
If you are a device creator (i.e. you want to build ROMs) you need the following extensions:
ppm install XML-Writer
ppm install XML-DOM
ppm install XML-Checker
You do not need to install these if you are an application developer.
How do I install Python on my C++ development PC?
ActiveState Python 2.5.1 or later is required on your PC in order to build Symbian C++ code with the "Symbian Build System v2" (SBSv2). The Product Development Toolkit will issue a warning if the required version is not present.
Python installation files can be downloaded from ActiveState. The Python community is very good at maintaining backward compatibility, so you should simply download the recommended version and double click on the file to install. You can install the package wherever you like. To verify the installation, see How do I test that my development environment is set up correctly?.
Can I Use the Kits on Windows Vista?
Yes. The latest versions of the Symbian OS tools and SDKs are fully compatible with Windows Vista.
However, because Vista has tighter security than XP, you have to take extra precautions during installation, bearing the following in mind:
- ActivePerl: If you are using Windows Vista, set the installation to run with administrator rights from the file properties of the installer. If you install from your normal user account and simply allow the user account control prompts during installation, installation will succeed, but the required path variables might not be set during installation, causing problems later on.
- SDK: The SDK includes a patch for use of the GCCE compiler in Windows Vista. You will be notified about it at install time but you will have to apply it manually. Further information can be found here.
Windows Vista introduces the concept of Virtual Storage. This is used to prevent untrusted/unprivileged applications from writing to sensitive locations. This may prevent the SDK installer from writing the configuration information in C:\Program Files\Common Files\Symbian\devices.xml. Instead, a file will be created under %USERPROFILE%\AppData\Local\VirtualStore\Program Files\Common Files\Symbian and you will have to transfer the content manually.
You may also need to add your SDK to your list of devices manually as described below.
How do I use the ADT with an installed SDK?
The tools in the ADT should automatically detect any installed application development SDKs.
If for some reason a kit is not detected you can add one in Carbide.c++ using menu: Windows | Preferences | Carbide.c++ | SDK Preferences. Instructions on how you work with kits are given in the Carbide Help: Carbide.c++ User Guide > Project management > Working with SDKs.
Are There Any Release Notes?
Yes, the release notes for ADT v1.0 are available on this wiki.
PDT
What is in the PDT's PDK Overlay?
The Product Development Toolkit (PDT) contains a number of tools and utilities that must be applied to every SDK or PDK you want to use them with. This set of tools is known as the "PDK Overlay".
The following tools are in the PDK Overlay. More information about each tools is given in the topic: #What's in my toolkit?.
- analyzetool
- CBR tools
- CDB tools
- cMaker
- Core Dump Server
- Evalid
- iMaker
- Leavescan
- piprofiler
- STAT
- TestExecute
- Trace_Command_Line_Tool
- trk
- Use_Case_Controller
- WinTAP
ADT
Where do I find the ADT tools?
After installation you can access the newly installed tools from the Windows start button: All Programs | Symbian Foundation ADT v1.4.
Where can I find Help information ?
The installation process creates a Windows start button link to Carbide Help: All Programs | Symbian Foundation ADT v1.0 | Carbide.c++ | Carbide.c++ Help
How do I update my Installation?
Application Development Tools that are integrated into Carbide.c++ may be updated using the normal Eclipse update process, as documented in Carbide Help: Carbide.c++ User Guide > Carbide.c++ Overview > Introduction > Updating Carbide.c++. The update will include tools in both the ADT and PDT.
Tools that are not part of Carbide cannot be updated via the update site; when necessary the whole ADT will be updated.
| Note You should only install updates from the Carbide.c++ update site. Updating any other components might overwrite changes the Carbide team had to do to Eclipse or the CDT plug-in for C++ development support within Eclipse. |
SDK
PDK
iSSK
STK
Comments
Mashton said…
Hamishwillee said…
@Mashton thanks for your comment. Would it be better for us to suggest that developers install as their normal user account, then manually set the perl path?
--Hamishwillee 23:46, 15 December 2009 (UTC)
Hamishwillee said…
@Mashton thanks for your comment. Would it be better for us to suggest that developers install as their normal user account, then manually set the perl path?
--Hamishwillee 23:53, 15 December 2009 (UTC)
Sign in to comment…



This article states that the Perl installer's file properties can be changed to run as admin. This is not the case. There are other ways to do this but the article is wrong. The serious problem for me is the "Internal Error 2739" when installing the version of Perl (5.6.1) required for Symbian. There's a work around for this though on the ActiveState website concerning the re-registration of jscript.dll and vbscript.dll.
--Mashton 23:27, 15 December 2009 (UTC)