diff -r 80ef3a206772 -r 48780e181b38 Symbian3/SDK/Source/GUID-EFF3BD37-BC29-52F5-B8AA-6362F0C3E20F.dita --- a/Symbian3/SDK/Source/GUID-EFF3BD37-BC29-52F5-B8AA-6362F0C3E20F.dita Fri Jul 16 17:23:46 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,87 +0,0 @@ - - - - - -ARMV5 -build targets -

The ARMV5 build target builds to the ARMV5 architecture. -It is built to conform to a binary standard developed by ARM (the ABI for -the ARM architecture). Details of the standard are published at http://www.arm.com/products/DevTools/ABI.html.

-

The situation is complicated by there existing two versions of the ARM -ABI, referred to as v1 and v2 respectively, both of which are supported by -the toolchain. This page explains the build target to use in each case. For -more information on the differences in the toolchain used for each version -of the ABI, see ABIv1 -to ABIv2 toolchain changes.

-

This page includes the following sections, which describe RVCT compiler -versions for the ARM platform and ABI versions of ARM:

- -
ARM RVCT compiler -versions

The ARMV5 build targets are built using -ARM's own RealView Compiler Tools (RVCT) (http://www.arm.com/products/DevTools/RealViewDevSuite.html).

Note -that RVCT 2.2 build 435 used with Symbian OS v9.2 is not supported from v9.3 -onwards. Symbian OS v9.3 uses RVCT 2.2 build 559 and from OS v9.4 onwards -RVCT 2.2 build 616 is used.

The following section discusses issues -concerned with having RVCT 2.2 builds 435, 559 and 616 installed on a single -PC, so as to enable development on both v9.2, v9.3 and v9.4.

Compiler -set-up for v9.2, v9.3 and v9.4 builds

If you need to develop for -Symbian OS v9.2, v9.3 and v9.4 on the same PC, you need to have the RVCT 2.2 -builds 435, 559 and 616 installed. The build tools will use the version that -appears first in the environment path variable. You will -need to modify this setting yourself when moving between development kits.

Assuming -the tools are installed to C:\apps\:

    -
  • When working with v9.2, -include build 435 version of the tools first in the path.

    For example:

    set -PATH=C:\apps\ARM\RVCT\Programs\2.2\435\win_32-pentium;%path%

  • -
  • When working with v9.3, -include build 559 version of the tools first in the path.

    For example:

    set -PATH=C:\apps\ARM\RVCT\Programs\2.2\559\win_32-pentium;%path%

  • -
  • When working with v9.4, -include build 616 version of the tools first in the path.

    For example:

    set -PATH=C:\apps\ARM\RVCT\Programs\2.2\616\win_32-pentium;%path%

  • -

To know which version is currently installed on your PC, use the -following command:

armcc --vsn

This -reports the compiler version and build number.

-
ARMV5 (ABI -v1 mode)

Use this target to create binaries conforming to the ABI -v1.

To build for ARMV5 (ABI v1) with abld on -Symbian OS v9.3 and earlier versions, use:

abld build ARMV5 -[udeb | urel]

To build for ARMV5 (ABI -v1) with abld on Symbian OS v9.4 and later versions, -use:

abld build ARMV5_ABIv1 [udeb | urel]

Binaries -are generated in the udeb and/or urel sub-directories -of the epoc32\release\ARMV5\ directory. From Symbian -OS v9.4 onwards, the binaries are generated in epoc32\release\ARMV5_ABIv1\.

Library -export (.lib) files are generated in the epoc32\release\ARMV5\lib\ directory.

-
ARMV5 (ABI -v2 mode)

Use this target to create binaries conforming to the ABI -v2.

To build for ARMV5 (ABI v2) with abld on -Symbian OS v9.3 and earlier versions, use:

abld build ARMV5_ABIv2 -[udeb | urel]

To build for ARMV5 (ABI -v2) with abld on Symbian OS v9.4 and later versions, -use:

abld build ARMV5 [udeb | urel]

Binaries -are generated in the udeb and/or urel sub-directories -of the epoc32\release\ARMV5_ABIv2\ directory. From Symbian -OS v9.4 onwards, the binaries are generated in epoc32\release\ARMV5\.

Library -export (.dso) files are generated in the epoc32\release\ARMV5\lib\ directory. -The ABI v2 toolchain need to support multiple ABI v2 compatible compilers -to have a common directory for the import library files.

From Symbian -OS v9.4 and later, ABI v2 is the default platform. So, a simple abld -build command will create a binary conforming to ABI v2. To create -a binary conforming to ABI v1, use abld build ARMV5_ABIv1.

You -can switch back to the old approach, where the targets ARMV5 and ARMV5_ABIv2 will -build binaries conforming to ABI v1 and ABI v2 respectively. For more details -on this, refer to Switching -between ABI modes.

-
\ No newline at end of file