Symbian3/SDK/Source/GUID-D0C1493F-BA2F-517B-9D96-073DCF3D7923.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Thu, 21 Jan 2010 18:18:20 +0000
changeset 0 89d6a7a84779
permissions -rw-r--r--
Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
89d6a7a84779 Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
     1
<?xml version="1.0" encoding="utf-8"?>
89d6a7a84779 Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
     2
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
89d6a7a84779 Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
     3
<!-- This component and the accompanying materials are made available under the terms of the License 
89d6a7a84779 Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
     4
"Eclipse Public License v1.0" which accompanies this distribution, 
89d6a7a84779 Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
     5
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
89d6a7a84779 Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
     6
<!-- Initial Contributors:
89d6a7a84779 Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
     7
    Nokia Corporation - initial contribution.
89d6a7a84779 Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
     8
Contributors: 
89d6a7a84779 Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
     9
-->
89d6a7a84779 Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
    10
<!DOCTYPE concept
89d6a7a84779 Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
    11
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
89d6a7a84779 Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
    12
<concept xml:lang="en" id="GUID-D0C1493F-BA2F-517B-9D96-073DCF3D7923"><title>ARMV6 build targets</title><prolog><metadata><keywords/></metadata></prolog><conbody><p>The <codeph>ARMV6</codeph> build target builds to the <codeph>ARMV6</codeph> 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. </p> <section><title>Building binaries for ARMV6</title> <p>To build for <codeph>ARMV6</codeph> with <filepath>abld</filepath>, use: </p> <p><userinput>abld build ARMV6 | ARMV6_ABIv2 [udeb | urel]</userinput> </p> <p>Binaries are generated in the <filepath>udeb</filepath> and/or <filepath>urel</filepath> sub-directories of the <filepath>epoc32\release\ARMV6\</filepath> directory for ABI v1 and <filepath>epoc32\release\ARMV6_ABIv2\</filepath> directory for ABI v2. </p> <p>As per the conventional approach mentioned above, the build targets <codeph>ARMV6</codeph> and <codeph>ARMV6_ABIv2</codeph> are used to build binaries conforming to <codeph>ARMV6</codeph> ABI v1 and ABI v2 respectively. From Symbian OS v9.4 onwards, the behaviour of these native build targets (<codeph>ARMV6</codeph> and <codeph>ARMV6_ABIv2</codeph>) has changed. The build target <codeph>ARMV6</codeph> is used to build binaries conforming to ABI v2 instead of ABI v1, and <codeph>ARMV6_ABIv1</codeph> is used to build binaries conforming to ABI v1. Also, the release directories have changed to <filepath>epoc32\release\ARMV6\</filepath> for ABI v2 binaries and <filepath>epoc32\release\ARMV6_ABIv1\</filepath> for ABI v1 binaries. </p> <p>You can switch back to the old approach, where the targets <codeph>ARMV6</codeph> and <codeph>ARMV6_ABIv2</codeph> will build binaries conforming to ABI v1 and ABI v2 respectively. For more details on this, refer to <xref href="GUID-8061E4C1-4E63-53F6-9863-D0D7BB8A2E5D.dita">Switching between ABI modes</xref>. </p> <p>Library export (<filepath>.lib</filepath> or <filepath>.dso</filepath>) files are generated in the <filepath>epoc32\release\ARMV5\lib\</filepath> directory. This directory is used, as the library file format has not changed since <codeph>ARMV5</codeph>. </p> <p> <b>Note:</b> Code is not built for <codeph>ARMV6</codeph> target by default. It has to be explicitly specified on the command line or with a <codeph>prj_platforms</codeph> statement in the component's <filepath>BLD.INF</filepath> file. </p> </section> <section><title>Building binaries for ARMV6t2</title> <p>To build binaries for <codeph>ARMV6t2</codeph> with <filepath>abld</filepath>, use: </p> <p><userinput>abld build ARMV6t2 [udeb | urel]</userinput> </p> <p>The command builds binaries conforming to ABIv2 for ARMV6 architecture supporting Thumb-2 instruction set. </p> </section> <section><title>IDE (CodeWarrior) support for ARMV6</title> <p>To build for <codeph>ARMV6</codeph> or <codeph>ARMV6t2</codeph> from the CodeWarrior IDE, specify <codeph>ARMV6</codeph> or <codeph>ARMV6t2</codeph> as the target in the Platform Selection field, when importing a project from an <filepath>.mmp</filepath> file. The binaries can then be built by setting the target to <codeph>ARMV6</codeph> or <codeph>ARMV6t2</codeph> for <codeph>UREL</codeph> or <codeph>UDEB</codeph>. </p> <p>From the command line, to generate a CodeWarrior XML project file for <codeph>ARMV6</codeph> or <codeph>ARMV6t2</codeph>, use the following command: </p> <p><userinput>makmake &lt;project&gt;.mmp CW_IDE:ARMV6 | ARMV6t2</userinput> </p> <p>and then import the generated XML file from the IDE. </p> <p> <b>Note</b>: The binaries for <codeph>ARMV6</codeph> or <codeph>ARMV6t2</codeph> target are not created by default. You must explicitly specify these targets either on the command line using <filepath>makmake</filepath> or in the Platform Selection field. </p> </section> <section><title>Customisation for ARMV6</title> <p>The build system provides the ARMV6 target by providing a build specialization file (BSF) in the <filepath>epoc32\tools\</filepath> directory. For ABI v1 builds this is <filepath>ARMV6.BSF</filepath>; for ABI v2 builds, <filepath>ARMV6_ABIv2.bsf</filepath>. From Symbian OS v9.4 onwards, for ABI v1 builds the BSF file is <filepath>ARMV6_ABIv1.bsf</filepath> and for ABI v2 builds it is <filepath>ARMV6.bsf</filepath>. For more information about BSF mechanism, refer to <xref href="GUID-5B442231-6E71-5F35-A27E-B14AEC2FC105.dita">ARMV5 build customisation</xref>. </p> </section> </conbody></concept>