Symbian3/SDK/Source/GUID-CAC07A47-1475-5152-83AA-E59FD3AFF321.dita
changeset 13 48780e181b38
parent 12 80ef3a206772
child 14 578be2adaf3e
--- a/Symbian3/SDK/Source/GUID-CAC07A47-1475-5152-83AA-E59FD3AFF321.dita	Fri Jul 16 17:23:46 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,421 +0,0 @@
-<?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-CAC07A47-1475-5152-83AA-E59FD3AFF321" xml:lang="en"><title>elf2e32
-command syntax</title><prolog><metadata><keywords/></metadata></prolog><conbody>
-<section><title>Overview</title> <p>The <filepath>elf2e32</filepath> tool's
-primary function is to create executables (DLLs and EXEs) in the format required
-by Symbian platform, known as the E32Image format. The tool takes as input,
-the executables produced by a compiler in the standard Executable and Linking
-Format (ELF), and Symbian platform-specific options specified as command-line
-arguments to the tool. The tool is located in at <filepath>epoc32\tools\elf2e32.exe</filepath>. </p> <p><b>Invocation
-syntax </b> </p> <p> <codeph>elf2e32 [--capability=&lt;capabilities&gt;] [--compressionmethod
-          [none | inflate | bytepair]] [--debuggable] [--dlldata]        
-  [--definput=&lt;file-path&gt;] [--defoutput=&lt;file-path&gt;]           [--dso=&lt;file-path&gt;]
-[--dump=&lt;dump-options&gt;]           [--e32input=&lt;file-path&gt;] [--elfinput=&lt;file-path&gt;]
-[--fixedaddress]           [--heap=&lt;committed-size&gt;[,&lt;reserved-size&gt;]]
-[--help]           [--libpath=&lt;search-paths&gt;] [--linkas=&lt;name&gt;] [--namedlookup]
-          [--noexportlibrary] [--output=&lt;file-path&gt;] [--sid=&lt;secure-ID&gt;]
-          [--stack=&lt;size&gt;] [--sysdef=&lt;ordinal-number&gt;,&lt;symbol&gt;] 
-         [--targettype=&lt;target-type&gt;] [--uid1=&lt;UID&gt;] [--uid2=&lt;UID&gt;]
-          [--uid3=&lt;UID&gt;] [--uncompressed]</codeph>  </p> </section>
-<section><title>Options</title> <table id="GUID-40226F24-CBEA-5810-832A-9FEC90B108AB">
-<tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
-<tbody>
-<row>
-<entry><p> <b>Option</b>  </p> </entry>
-<entry><p> <b>Description</b>  </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>capability=&lt;capabilities&gt;</codeph>  </p> </entry>
-<entry><p>Platform security capabilities to be assigned to the executable. </p> <p>Capabilities
-can be specified by name using the set of identifiers used in mmp files, i.e.: <codeph>TCB</codeph>, <codeph>CommDD</codeph>, <codeph>PowerMgmt</codeph>, <codeph>MultimediaDD</codeph>, <codeph>ReadDeviceData</codeph>, <codeph>WriteDeviceData</codeph>, <codeph>DRM</codeph>, <codeph>TrustedUI</codeph>, <codeph>ProtServ</codeph>, <codeph>DiskAdmin</codeph>, <codeph>NetworkControl</codeph>, <codeph>AllFiles</codeph>, <codeph>SwEvent</codeph>, <codeph>NetworkServices</codeph>, <codeph>LocalServices</codeph>, <codeph>ReadUserData</codeph>, <codeph>WriteUserData</codeph>, <codeph>Location</codeph>, <codeph>SurroundingsDD</codeph>, and <codeph>UserEnvironment</codeph>. </p> <p>Multiple
-capabilities can be specified using "+" as a separator. For example: </p> <codeblock id="GUID-80CCAB8E-AA0C-5B48-9E68-59AB1670BCA6" xml:space="preserve">--capability=LocalServices+ReadDeviceData+ReadUserData</codeblock> <p>The
-special capability name <codeph>ALL</codeph> can be used to represent all
-capabilities supported by the current version of Symbian platform. This can
-also be used together with capability names prefixed with a '-' to indicate
-which capabilities to exclude. For example: </p> <codeblock id="GUID-08672BAE-CABA-564E-B49C-6AB6FA8E8BA5" xml:space="preserve">--capability=ALL-TCB-TrustedUI</codeblock> <p>The default is no capabilities though the word <codeph>NONE</codeph> can
-be used explicitly. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>debuggable</codeph>  </p> </entry>
-<entry><p>Specifies that the application can be debugged using the run-mode
-debug subsystem. Only executables (EXEs and EXEXPs) can be specified as <codeph>debuggable</codeph>. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>definput=&lt;file-path&gt;</codeph>  </p> </entry>
-<entry><p>Input DEF file. </p> <p>This is used to specify a DEF file when
-constructing a DLL and/or import library. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>defoutput=&lt;file-path&gt;</codeph>  </p> </entry>
-<entry><p>Output DEF file. </p> <p>Specifies a DEF file to be constructed
-by the tool. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>dlldata</codeph>  </p> </entry>
-<entry><p>Allow writable static data in the DLL. </p> <p>The default is that
-a DLL may not have writable static data. For more information, see <xref href="GUID-5BDE6462-E6CA-5738-A587-C7D875574789.dita">Static
-data</xref>. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>dso=&lt;file-path&gt;</codeph>  </p> </entry>
-<entry><p>Output DSO (or library) file. </p> <p>Specifies the LIB file to
-be constructed by the tool. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>dump=&lt;dump-options&gt;</codeph>  </p> </entry>
-<entry><p>Used to specify the information generated when the <codeph>e32input</codeph> option
-is used. The sections to include are specified as follows: </p> <ul>
-<li id="GUID-840C91A5-4C8A-507A-A4A3-D78BA9A370D7"><p> <codeph>h</codeph>:
-Header </p> </li>
-<li id="GUID-4BE04059-6BA5-51D2-9581-74808320B726"><p> <codeph>s</codeph>:
-Security information </p> </li>
-<li id="GUID-F61A5E32-808F-553F-B65E-6DB64270434B"><p> <codeph>c</codeph>:
-Code section </p> </li>
-<li id="GUID-B61E0C72-4DEC-5160-BC55-FE4F9094B0D9"><p> <codeph>d</codeph>:
-Data section </p> </li>
-<li id="GUID-8D16EF3E-63E0-577D-9DEE-EAD64D5B342D"><p> <codeph>e</codeph>:
-Export information </p> </li>
-<li id="GUID-158B2410-6EBF-5D09-88E7-3CFC2E46DC25"><p> <codeph>I</codeph>:
-Import table </p> </li>
-</ul> </entry>
-</row>
-<row>
-<entry><p> <codeph>e32input=&lt;file-path&gt;</codeph>  </p> </entry>
-<entry><p>Dumps a description of the specified E32Image file to standard output.
-The output describes the executable's properties such as its header, its imports
-and exports, and the contents of its code and data sections. Output options
-are specified using the <codeph>--dump</codeph> parameter. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>elfinput=&lt;file-path&gt;</codeph>  </p> </entry>
-<entry><p>Input ELF file. </p> <p>Specifies a compiler-generated executable
-in ELF format to be converted into E32Image format by the tool. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>fixedaddress</codeph>  </p> </entry>
-<entry><p>Indicates that the process must have a fixed address. </p> <p>See <xref href="GUID-A16508C2-2743-5E36-BCFB-C509ACCD372F.dita">Fixed processes</xref> for
-more information. </p> <p>The default is no fixed address. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>heap=&lt;committed-size&gt;[,&lt;reserved-size&gt;]</codeph>  </p> </entry>
-<entry><p>The committed size and reserved size of the heap for the process,
-specified in bytes. </p> <p>The first value given is the committed size, followed
-by the reserved size which is optional. </p> <p>The default committed size
-is 0x1000 and the default reserved size is 0x100000. </p> <p>See <xref href="GUID-BFEBCD57-3C83-56D7-B7A3-B8A361725645.dita">Memory
-Management concepts</xref> for more information. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>help</codeph>  </p> </entry>
-<entry><p>Displays help text for the tool. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>libpath=&lt;search-paths&gt;</codeph>  </p> </entry>
-<entry><p>A semi-colon separated list of search paths that the tool should
-use to locate import libraries. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>linkas=&lt;name&gt;</codeph>  </p> </entry>
-<entry><p>The internal name used in the image file for the executable. This
-can include information that specifies the executable version (in braces)
-and the UID3 (in square brackets). For example, <codeph>foo{00020001}[10011235].exe</codeph>,
-would be used for an executable <filepath>foo.exe</filepath>, at version 2.1,
-with UID3 <codeph>0x10011235</codeph>. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>log=&lt;file-path&gt;</codeph>  </p> </entry>
-<entry><p>Redirects console log messages to the specified file </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>compressionmethod [none | inflate | bytepair]</codeph>  </p> </entry>
-<entry><p>The compression method to be used to compress the files. The tool
-uses the <codeph>inflate</codeph> method by default. </p> <p>The following
-compression methods can be used: </p> <p><table id="GUID-66F65203-1E4F-56D9-9AB8-7D47420C0B3B">
-<tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
-<tbody>
-<row>
-<entry><p>none </p> </entry>
-<entry><p>The files are not compressed. This is equivalent to using the <codeph>uncompressed</codeph> keyword. </p> <p> <b>Note</b>:
-The <codeph>uncompressed</codeph> keyword, when specified, takes precedence
-over any <codeph>compressionmethod</codeph>. </p> </entry>
-</row>
-<row>
-<entry><p>inflate </p> </entry>
-<entry><p>Compresses executable files using the default (Deflate, Huffman+LZ77)
-algorithm. </p> </entry>
-</row>
-<row>
-<entry><p>bytepair </p> </entry>
-<entry><p>Compresses executable files using the bytepair algorithm. Bytepair
-compression allows faster decompression than the default Deflate, Huffman+LZ77
-algorithm and supports demand paging by performing compression and decompression
-of code in independent 4KB pages. </p> </entry>
-</row>
-</tbody>
-</tgroup>
-</table> </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>namedlookup</codeph>  </p> </entry>
-<entry><p>Enables symbol lookup by name using the <xref href="http://www.opengroup.org/onlinepubs/009695399/functions/dlsym.html" scope="external">dlsym</xref> Open Group API. This option has an impact on
-the binary size as Symbian platform binaries do not include symbol information
-by default. </p> <p> <b>Note</b>: If the tool is invoked by the Symbian platform
-build toolchain, symbol lookup is enabled for the <codeph>STDEXE</codeph> and <codeph>STDDLL</codeph> target
-types only. To enable symbol lookup for other target types, the tool must
-be invoked independently. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>noexportlibrary</codeph>  </p> </entry>
-<entry><p>Suppress implicit exports. </p> <p>As part of the library exports,
-the RVCT tools generate items not marked as <codeph>EXPORT_C</codeph> in the
-source code. These include Virtual Table and Run-time Type Information entries.
-Specifying this option causes the tool not to include these exports. </p> <p>For
-background information, see <filepath>cedar\generic\tools\documentation\Migrating_from_RVCT21_build_328_to_build_416_v1.0.doc</filepath>. </p> <p>The default is to include these items generated by RVCT. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>output=&lt;file-path&gt;</codeph>  </p> </entry>
-<entry><p>Output E32 image file name. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>sid=&lt;secure-ID&gt;</codeph>  </p> </entry>
-<entry><p>Secure ID (SID) of the executable. </p> <p>An SID identifies an
-executable uniquely on a phone. This allows service providers such as servers
-to make security checks on the basis of the executable making the request. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>stack=&lt;size&gt;</codeph>  </p> </entry>
-<entry><p>Specifies the stack size for a process in bytes. </p> <p>The default
-is 0. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>sysdef=&lt;ordinal-number&gt;, &lt;symbol&gt;</codeph>  </p> </entry>
-<entry><p>This option forces the specified symbol to be exported at the specified
-ordinal position. </p> <p>This is required for some target types (polymorphic
-DLLs). </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>targettype=&lt;target-type&gt;</codeph>  </p> </entry>
-<entry><p>Target type. The vaild types are as specified by the mmp <xref href="GUID-9535CF67-7541-554E-BE5C-9FDDFDB58EA5.dita">targettype</xref> keyword. </p> <p>If <codeph>elfinput</codeph> is specified and there is no targettype,
-a <xref href="GUID-9605B59D-F9DB-4BA3-8C87-1C5205976CBB.dita#GUID-9605B59D-F9DB-4BA3-8C87-1C5205976CBB/GUID-cd54fdec-8587-4d01-b839-d23af95c76b8">Custom
-target</xref> is assumed. </p> <p>An <codeph>IMPLIB</codeph> target is assumed
-if <codeph>--elfinput</codeph> is not specified and <codeph>-deffilein</codeph> is
-specified. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>uid1=&lt;UID&gt;</codeph>  </p> </entry>
-<entry><p>UID 1 value for output executable. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>uid2=&lt;UID&gt;</codeph>  </p> </entry>
-<entry><p>UID 2 value for output executable. </p> <p>The default is 0. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>uid3=&lt;UID&gt;</codeph>  </p> </entry>
-<entry><p>UID 3 value for output executable. </p> <p>The default is 0. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>uncompressed</codeph>  </p> </entry>
-<entry><p>Specifies that the target executable must not be compressed. </p> <p>By
-default, the target executable is compressed. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>unfrozen</codeph>  </p> </entry>
-<entry><p>Specifies that the input DEF file (specified with <codeph>--definput</codeph>)
-is not treated as frozen. This means that the tool will not report errors
-if the executable does not contain symbols that are specified in the DEF file. </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>vid</codeph>  </p> </entry>
-<entry><p>Vendor ID (VID) of the executable. </p> <p>A VID allows service
-providers such as servers to make security checks on the basis of the supplier
-of the executable making the request. </p> </entry>
-</row>
-</tbody>
-</tgroup>
-</table> <p>The following table specifies whether an option is required, optional
-or not applicable (N/A) for the main use cases of the tool (namely creating
-DLLs, EXEs, EXEs with exports (EXEXP target), and import libraries (IMPLIB
-target)). </p> <table id="GUID-E566D771-4098-5A82-8FBF-4C061D76BEEF">
-<tgroup cols="5"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/><colspec colname="col3"/><colspec colname="col4"/>
-<tbody>
-<row>
-<entry><p> <b>Option</b>  </p> </entry>
-<entry><p> <b>DLL (static/polymorphic)</b>  </p> </entry>
-<entry><p> <b>EXE</b>  </p> </entry>
-<entry><p> <b>EXEXP</b>  </p> </entry>
-<entry><p> <b>IMPORT LIB</b>  </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>capability</codeph>  </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>debuggable</codeph>  </p> </entry>
-<entry><p>N/A </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>dlldata</codeph>  </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>N/A </p> </entry>
-<entry><p>N/A </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>definput</codeph>  </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>N/A </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>required </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>defoutput</codeph>  </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>N/A </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>dso</codeph>  </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>N/A </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>required </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>elfinput</codeph>  </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>fixedaddress</codeph>  </p> </entry>
-<entry><p>N/A </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>heap</codeph>  </p> </entry>
-<entry><p>N/A </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>libpath</codeph>  </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>linkas</codeph>  </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>required </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>noexportlibrary</codeph>  </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>N/A </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>output</codeph>  </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>sid</codeph>  </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>stack</codeph>  </p> </entry>
-<entry><p>N/A </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>no </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>sysdef</codeph>  </p> </entry>
-<entry><p>Required for polymorphic DLL target types only </p> </entry>
-<entry><p>N/A </p> </entry>
-<entry><p>N/A </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>targettype</codeph>  </p> </entry>
-<entry><p>DLL, or polymorphic DLL target type </p> </entry>
-<entry><p>EXE </p> </entry>
-<entry><p>EXEXP </p> </entry>
-<entry><p>IMPLIB </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>uid1</codeph>  </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>uid2</codeph>  </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>uid3</codeph>  </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>uncompressed</codeph>  </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>unfrozen</codeph>  </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>N/A </p> </entry>
-<entry><p>optional </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-<row>
-<entry><p> <codeph>vid</codeph>  </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>required </p> </entry>
-<entry><p>N/A </p> </entry>
-</row>
-</tbody>
-</tgroup>
-</table> </section>
-</conbody></concept>
\ No newline at end of file