Symbian3/SDK/Source/GUID-B51EA0DA-5BCE-4A8C-A7A7-1FE096F7FF27.dita
changeset 0 89d6a7a84779
child 13 48780e181b38
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Symbian3/SDK/Source/GUID-B51EA0DA-5BCE-4A8C-A7A7-1FE096F7FF27.dita	Thu Jan 21 18:18:20 2010 +0000
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
+<!-- This component and the accompanying materials are made available under the terms of the License 
+"Eclipse Public License v1.0" which accompanies this distribution, 
+and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
+<!-- Initial Contributors:
+    Nokia Corporation - initial contribution.
+Contributors: 
+-->
+<!DOCTYPE concept
+  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
+<concept id="GUID-B51EA0DA-5BCE-4A8C-A7A7-1FE096F7FF27" xml:lang="en"><title>Compilation
+and Build Process on Symbian Platform</title><shortdesc>This article discusses a few basic things about the compilation
+and build process in Symbian platform.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
+<p>The <codeph>bldmake</codeph> tool processes the component description file <filepath>bld.inf</filepath> in
+the current directory and generates the batch file <filepath>abld.bat</filepath> and
+several build batch <codeph>makefiles</codeph> (<filepath>.make</filepath>)
+. The <codeph>makefiles</codeph> are used by <codeph>abld</codeph> to carry
+out the various stages of building the component. </p>
+<p>The basic usage of <codeph>abld</codeph> command is:</p>
+<codeblock xml:space="preserve">abld command[options][platform][build][program]</codeblock>
+<p>This enables the programmer to build for different platforms with varied
+specifications. The parameter command specifies which action to perform to
+the <codeph>abld</codeph> tool. The actions can be build, clean, <codeph>cleanexport</codeph> and
+so on. The parameter options includes <codeph>–c</codeph>, <codeph>-w</codeph> and
+so on, these enable the user to check for the presence of releasables. The
+parameter platform specifies the platform for which the project will be built.
+The platform can be <codeph>WINSCW</codeph>, <codeph>GCCE</codeph>, <codeph>GCCXML</codeph>, <codeph>EDG</codeph>, <codeph>ARMV5</codeph>, <codeph>VS6</codeph>, <codeph>CW_IDE</codeph> or <codeph>VS2003</codeph>. The parameter
+build specifies whether to build for debug (<codeph>udeb</codeph>) or release
+(<codeph>urel</codeph>) version. Finally the parameter program specifies which
+project definition file or mmp file to build. If left unspecified, all the
+MMP files mentioned in the <filepath>bld.inf</filepath> file are built. For
+more information, see <xref href="GUID-49397CFD-955A-5DF6-9251-368C44224966.dita">Build
+tools reference</xref>.</p>
+<p>The example below demonstrates the use of <codeph>bldmake</codeph>:</p>
+<codeblock xml:space="preserve">bldmake bldfiles</codeblock>
+<p>The <cmdname>abld build</cmdname> command compiles and links the target.</p>
+<codeblock xml:space="preserve">abld build</codeblock>
+<p>The <cmdname>abld freeze</cmdname> command freezes the project export.
+This is needed only for DLLs. </p>
+<codeblock xml:space="preserve">abld freeze</codeblock>
+<section id="GUID-CF5D3059-BDC4-407D-83D5-7C8DE9F5C3E7">       <title>Creating
+PKG file and Installation file for the target</title><p>A package (PKG) file
+is a text file containing items or statements that define the information
+required by the installation (SIS) file creation utility <codeph>makesis</codeph>.
+The PKG file format can be broken down into the following items:</p><ul>
+<li><p>Languages</p></li>
+<li><p>Language code table</p></li>
+<li><p>Package-header</p></li>
+<li><p>Vendor</p></li>
+<li><p>Logo</p></li>
+<li><p>Package-signature</p></li>
+<li><p>Package-body</p></li>
+<li><p>Dependency</p></li>
+<li><p>Properties </p></li>
+</ul><p>For more information on PKG files, see <xref href="GUID-43B4B4E7-413E-5D18-811C-4B9E38CDEB69.dita">PKG
+File Format</xref>.</p><p>The <cmdname>makesis</cmdname> utility creates software
+installation packages (SIS files) based on the information and the file locations
+on the source PC or target phone, defined in a package (PKG) file.</p><p>For
+example, consider the code snippet given below:</p><codeblock xml:space="preserve">makesis somefile.pkg</codeblock><p>The
+code goes through the PKG file and by default creates somefile.sis in the
+directory where the PKG file is present. </p><p>For more information on the <cmdname>makesis</cmdname> utility,
+see <xref href="GUID-4BDC9F63-83A1-53A5-91A0-B092AA821755.dita">MakeSIS</xref>.</p><p>After
+creating the SIS file it, has to be signed using <cmdname>signsis</cmdname> to
+install it on the phone. <cmdname>signsis</cmdname> is a Symbian supplied
+tool to digitally sign software installation (SIS) files using a specified
+certificate and private key. For example consider the code snippet given below:</p><codeblock xml:space="preserve">signsis somefile.sis somefile.sisx rd.cer rd-key.pem</codeblock><p>The parameter<filepath> somefile.sis</filepath> gives, the path to the
+SIS file which is to be signed. The second parameter, <filepath>somefile.sisx</filepath> specifies
+the name of the resultant signed SIS file. The third parameter, <filepath>rd.cer</filepath> specifies
+the path to the certificate file and the last parameter, <filepath>rd-key.pem</filepath> specifies
+the path to the file containing the private key. </p><p>For more information
+on <cmdname>signsis</cmdname>, see <xref href="GUID-B20EE8A3-D7B2-5872-AF43-001A88C1A46E.dita">SignSIS</xref>.</p></section>
+</conbody></concept>
\ No newline at end of file