core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_creating_sis_file.htm
author fturovic <frank.turovich@nokia.com>
Tue, 31 Aug 2010 10:54:44 -0500
changeset 1929 e42423cc31d4
parent 1920 b6a66d85e102
child 2009 b622387629d6
permissions -rw-r--r--
BUG 11531 - final updates for build config revision

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta name="LASTUPDATED" content="06/17/05 11:09:43" />
<title>Working with PKG and SIS Files</title>
<link rel="StyleSheet" href="../../../book.css" type="text/css"/>
</head>
<body >
<h2><b>Creating a .SIS File</b></h2>
<p>Carbide.c++ attempts to build SIS files for all phone targets when a PKG file exists in a given build project. More than one SIS/PKG file can be included and built by a project, but only one can be downloaded to the device for debugging purposes. </p>
<p>There are three main tools involved in generating SIS files from PKG files.</p>
<ul>
  <li>Makekeys - We invoke this tool when you don't specify a key/cert pair for OS
  9.x SIS file creation.</li>
  <li>Makesis &mdash; This tool takes a single PKG file as input and generates an unsigned SIS file. This is generally sufficient to run an application on a pre platform security device (EKA1). This tool is also used to generate SIS files for Platform Security, but in that case <span class="code">signsis</span> must be used.</li>
  <li>Signsis &mdash; This tool is used to sign a SIS file generated by <span class="code">makesis</span>. This tool is not available on all SDKs. This tool requires an existing certificate/key pair and does not randomly generate the pair for self-signing.</li>
</ul>
<p>When a phone target build detects a PKG file at the end of a build, a post-link stage will be executed to create a SIS file, that is: </p>
<ul>
  <li>For non-Platform Security SDKs (pre-OS 9.x), <span class="code">makesis</span> is called</li>
</ul>
<p>Depending upon which tool is used, you will  need to complete some entries in the <a href="../../reference/build_properties/pane_build_config_sis.htm">SIS Builder</a> pane of the Carbide Build Configurations panel of the project Properties dialog box. You can access this pane by selecting a project in the <a href="../../reference/view_proj_explorer.htm">Project Explorer</a> view and select <b>Project &gt; Properties</b> <strong>&gt; Carbide.c++ &gt; </strong><b>Carbide Build Configurations</b>. Fill in the necessary information to add PKG files to the project for downloading. </p>
<table width="88%"  border="0" cellpadding="2" cellspacing="0">
  <tr>
    <th width="19%" scope="col">Tool</th>
    <th width="81%" scope="col">Explanation</th>
  </tr>
  <tr>
    <td><b>SIS Builder </b></td>
    <td><p>Use the <b>Add</b> control to add one or more SIS or PKG files to the project up to the maximum number Carbide supports. Note that the <b>SIS Builder</b> pane operates on a build configuration level. You will need to add files in this pane for every build configuration in the project. </p>
      <p>In addition, any PKG file added here is picked up by the <a href="../../projects/launch/page_installation.htm">Installation</a> tab in Application TRK configurations. However, as only one SIS file can be debugged at a time you must specify which SIS/PKG file to install for debugging purposes. This is handy if you have both a developer SIS file and a certified SIS file that you want to remain in sync during development. Both are always built but you only need to debug one. </p>
      <p><img src="images/sis_builder_tab.png" width="573" height="203" /></p>
    <p class="figure">Figure 1 - SIS Builder tab </p></td>
  </tr>
  <tr>
    <td><b>SIS Properties </b></td>
    <td><div align="center">
      <p align="left">Complete the PKG File, and Signing Options settings in the <a href="../../reference/build_properties/wnd_sis_properties.htm">SIS Properties</a> dialog. By default, SIS files are output in the directory of the original SIS file.</p>
      <p><img src="../../reference/images/wnd_sis_properties.png" width="533" height="463"></p>
      <p class="figure">Figure 2 - SIS Properties dialog </p>
      </div></td>
  </tr>
</table>
<p>For phones that utilize OS 9.x, all SIS files must be signed before being installed on a device. You can specify your certificate and key pair file in the SIS Builder pane. By default, if no certificate/key pair is defined, temporary ones will be created in the build directory. This is a process called self-signing. However, not all devices allow self-signed applications to be installed. For information on obtaining certificate and key pairs for your development please visit <a href="https://www.symbiansigned.com">https://www.symbiansigned.com</a>.</p>
<p><b>Self-signing Tips</b></p>
<p>The MMP file must have certain keywords specified correctly including: </p>
<ul>
  <li>The keyword <span class="code">uid3</span> must be specified in the correct range. See <a href="https://www.symbiansigned.com/app/page/uidfaq">https://www.symbiansigned.com/app/page/uidfaq</a> for more info.</li>
  <li>VendorID requires a value, even if its zero (<span class="code">VENDORID 0</span>) </li>
  <li>Capability requires a value, in this case none (<span class="code">CAPABILITY none</span>) </li>
</ul>
<p>Failure to include the above keywords can cause a self-signed APP/DLL process to fail to launch.</p>
<p>After you have a valid .sis file, it will need to be uploaded to the target device. The sis file is uploaded and installed automatically once you run a Debug launch configuration.</p>
<h5>Related tasks</h5>
<ul>
  <li><a href="../start/carbide_deploying.htm">Manually Deploying Programs to Devices</a></li>
</ul>
<div id="footer">Copyright &copy; 2010 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. <br>License: <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a></div>

</body>
</html>