The ARMV6
build target builds to the ARMV6
architecture. Like the ARMV5 target, the target requires the ARM's RealView
Compilation Tools (RVCT) v2.2 build 616 from Symbian OS v9.4 onwards.
To build for ARMV6
with abld
, use:
> abld build ARMV6 | ARMV6_ABIv2 [udeb | urel]
Binaries are generated in the udeb
and/or
urel
sub-directories of the epoc32\release\ARMV6\
directory for ABI v1 and epoc32\release\ARMV6_ABIv2\
directory for
ABI v2.
As per the conventional approach mentioned above, the build targets
ARMV6
and ARMV6_ABIv2
are used to build binaries
conforming to ARMV6
ABI v1 and ABI v2 respectively. Since Symbian
OS v9.4 and later, the behaviour of these native build targets
(ARMV6
and ARMV6_ABIv2
) has changed. The build target
ARMV6
is used to build binaries conforming to ABI v2 instead of
ABI v1, and ARMV6_ABIv1
is used to build binaries conforming to
ABI v1. Also, the release directories have changed to
epoc32\release\ARMV6\
for ABI v2 binaries and
epoc32\release\ARMV6_ABIv1\
for ABI v1 binaries.
You can switch back to the old approach, where the targets
ARMV6
and ARMV6_ABIv2
will build binaries conforming
to ABI v1 and ABI v2 respectively. For more details on this, refer to
Switching between ABI modes.
Library export (.lib
) files are generated in the
epoc32\release\ARMV5\lib\
directory. This directory is used as the
LIB file format does not vary for processor architecture after
ARMV5
.
Note that code is not built for ARMV6
target by default.
It has to be explicitly specified on the command line or with a
prj_platforms
statement in the component's BLD.INF
file.
To build for ARMV6
from the CodeWarrior IDE, specify
ARMV6
as the target in the Platform Selection
field when importing a project from an .mmp
file.
ARMV6
binaries can then be built by setting the target to
ARMV6
UREL or UDEB.
From the command line, to generate a CodeWarrior XML project file for
ARMV6
use:
> makmake <project>.mmp CW_IDE:ARMV6
and then import the generated XML file from the IDE.
Note that ARMV6
target is not created by default. It has
to be explicitly specified either on the command line through
makmake
or in the Platform Selection
field.
The build system provides the ARMV6 target by providing a build
specialization file (BSF) in the epoc32\tools\
directory. The BSF
files for ABI v1 and v2 builds are ARMV6_ABIv1.BSF
and
ARMV6.bsf
respectively. For more information about BSF mechanism,
refer to ARMV5 build customisation.