Symbian3/SDK/Source/GUID-CAC07A47-1475-5152-83AA-E59FD3AFF321.dita
changeset 13 48780e181b38
parent 12 80ef3a206772
child 14 578be2adaf3e
equal deleted inserted replaced
12:80ef3a206772 13:48780e181b38
     1 <?xml version="1.0" encoding="utf-8"?>
       
     2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
       
     3 <!-- This component and the accompanying materials are made available under the terms of the License 
       
     4 "Eclipse Public License v1.0" which accompanies this distribution, 
       
     5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
       
     6 <!-- Initial Contributors:
       
     7     Nokia Corporation - initial contribution.
       
     8 Contributors: 
       
     9 -->
       
    10 <!DOCTYPE concept
       
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
       
    12 <concept id="GUID-CAC07A47-1475-5152-83AA-E59FD3AFF321" xml:lang="en"><title>elf2e32
       
    13 command syntax</title><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    14 <section><title>Overview</title> <p>The <filepath>elf2e32</filepath> tool's
       
    15 primary function is to create executables (DLLs and EXEs) in the format required
       
    16 by Symbian platform, known as the E32Image format. The tool takes as input,
       
    17 the executables produced by a compiler in the standard Executable and Linking
       
    18 Format (ELF), and Symbian platform-specific options specified as command-line
       
    19 arguments to the tool. The tool is located in at <filepath>epoc32\tools\elf2e32.exe</filepath>. </p> <p><b>Invocation
       
    20 syntax </b> </p> <p> <codeph>elf2e32 [--capability=&lt;capabilities&gt;] [--compressionmethod
       
    21           [none | inflate | bytepair]] [--debuggable] [--dlldata]        
       
    22   [--definput=&lt;file-path&gt;] [--defoutput=&lt;file-path&gt;]           [--dso=&lt;file-path&gt;]
       
    23 [--dump=&lt;dump-options&gt;]           [--e32input=&lt;file-path&gt;] [--elfinput=&lt;file-path&gt;]
       
    24 [--fixedaddress]           [--heap=&lt;committed-size&gt;[,&lt;reserved-size&gt;]]
       
    25 [--help]           [--libpath=&lt;search-paths&gt;] [--linkas=&lt;name&gt;] [--namedlookup]
       
    26           [--noexportlibrary] [--output=&lt;file-path&gt;] [--sid=&lt;secure-ID&gt;]
       
    27           [--stack=&lt;size&gt;] [--sysdef=&lt;ordinal-number&gt;,&lt;symbol&gt;] 
       
    28          [--targettype=&lt;target-type&gt;] [--uid1=&lt;UID&gt;] [--uid2=&lt;UID&gt;]
       
    29           [--uid3=&lt;UID&gt;] [--uncompressed]</codeph>  </p> </section>
       
    30 <section><title>Options</title> <table id="GUID-40226F24-CBEA-5810-832A-9FEC90B108AB">
       
    31 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
       
    32 <tbody>
       
    33 <row>
       
    34 <entry><p> <b>Option</b>  </p> </entry>
       
    35 <entry><p> <b>Description</b>  </p> </entry>
       
    36 </row>
       
    37 <row>
       
    38 <entry><p> <codeph>capability=&lt;capabilities&gt;</codeph>  </p> </entry>
       
    39 <entry><p>Platform security capabilities to be assigned to the executable. </p> <p>Capabilities
       
    40 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
       
    41 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
       
    42 special capability name <codeph>ALL</codeph> can be used to represent all
       
    43 capabilities supported by the current version of Symbian platform. This can
       
    44 also be used together with capability names prefixed with a '-' to indicate
       
    45 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
       
    46 be used explicitly. </p> </entry>
       
    47 </row>
       
    48 <row>
       
    49 <entry><p> <codeph>debuggable</codeph>  </p> </entry>
       
    50 <entry><p>Specifies that the application can be debugged using the run-mode
       
    51 debug subsystem. Only executables (EXEs and EXEXPs) can be specified as <codeph>debuggable</codeph>. </p> </entry>
       
    52 </row>
       
    53 <row>
       
    54 <entry><p> <codeph>definput=&lt;file-path&gt;</codeph>  </p> </entry>
       
    55 <entry><p>Input DEF file. </p> <p>This is used to specify a DEF file when
       
    56 constructing a DLL and/or import library. </p> </entry>
       
    57 </row>
       
    58 <row>
       
    59 <entry><p> <codeph>defoutput=&lt;file-path&gt;</codeph>  </p> </entry>
       
    60 <entry><p>Output DEF file. </p> <p>Specifies a DEF file to be constructed
       
    61 by the tool. </p> </entry>
       
    62 </row>
       
    63 <row>
       
    64 <entry><p> <codeph>dlldata</codeph>  </p> </entry>
       
    65 <entry><p>Allow writable static data in the DLL. </p> <p>The default is that
       
    66 a DLL may not have writable static data. For more information, see <xref href="GUID-5BDE6462-E6CA-5738-A587-C7D875574789.dita">Static
       
    67 data</xref>. </p> </entry>
       
    68 </row>
       
    69 <row>
       
    70 <entry><p> <codeph>dso=&lt;file-path&gt;</codeph>  </p> </entry>
       
    71 <entry><p>Output DSO (or library) file. </p> <p>Specifies the LIB file to
       
    72 be constructed by the tool. </p> </entry>
       
    73 </row>
       
    74 <row>
       
    75 <entry><p> <codeph>dump=&lt;dump-options&gt;</codeph>  </p> </entry>
       
    76 <entry><p>Used to specify the information generated when the <codeph>e32input</codeph> option
       
    77 is used. The sections to include are specified as follows: </p> <ul>
       
    78 <li id="GUID-840C91A5-4C8A-507A-A4A3-D78BA9A370D7"><p> <codeph>h</codeph>:
       
    79 Header </p> </li>
       
    80 <li id="GUID-4BE04059-6BA5-51D2-9581-74808320B726"><p> <codeph>s</codeph>:
       
    81 Security information </p> </li>
       
    82 <li id="GUID-F61A5E32-808F-553F-B65E-6DB64270434B"><p> <codeph>c</codeph>:
       
    83 Code section </p> </li>
       
    84 <li id="GUID-B61E0C72-4DEC-5160-BC55-FE4F9094B0D9"><p> <codeph>d</codeph>:
       
    85 Data section </p> </li>
       
    86 <li id="GUID-8D16EF3E-63E0-577D-9DEE-EAD64D5B342D"><p> <codeph>e</codeph>:
       
    87 Export information </p> </li>
       
    88 <li id="GUID-158B2410-6EBF-5D09-88E7-3CFC2E46DC25"><p> <codeph>I</codeph>:
       
    89 Import table </p> </li>
       
    90 </ul> </entry>
       
    91 </row>
       
    92 <row>
       
    93 <entry><p> <codeph>e32input=&lt;file-path&gt;</codeph>  </p> </entry>
       
    94 <entry><p>Dumps a description of the specified E32Image file to standard output.
       
    95 The output describes the executable's properties such as its header, its imports
       
    96 and exports, and the contents of its code and data sections. Output options
       
    97 are specified using the <codeph>--dump</codeph> parameter. </p> </entry>
       
    98 </row>
       
    99 <row>
       
   100 <entry><p> <codeph>elfinput=&lt;file-path&gt;</codeph>  </p> </entry>
       
   101 <entry><p>Input ELF file. </p> <p>Specifies a compiler-generated executable
       
   102 in ELF format to be converted into E32Image format by the tool. </p> </entry>
       
   103 </row>
       
   104 <row>
       
   105 <entry><p> <codeph>fixedaddress</codeph>  </p> </entry>
       
   106 <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
       
   107 more information. </p> <p>The default is no fixed address. </p> </entry>
       
   108 </row>
       
   109 <row>
       
   110 <entry><p> <codeph>heap=&lt;committed-size&gt;[,&lt;reserved-size&gt;]</codeph>  </p> </entry>
       
   111 <entry><p>The committed size and reserved size of the heap for the process,
       
   112 specified in bytes. </p> <p>The first value given is the committed size, followed
       
   113 by the reserved size which is optional. </p> <p>The default committed size
       
   114 is 0x1000 and the default reserved size is 0x100000. </p> <p>See <xref href="GUID-BFEBCD57-3C83-56D7-B7A3-B8A361725645.dita">Memory
       
   115 Management concepts</xref> for more information. </p> </entry>
       
   116 </row>
       
   117 <row>
       
   118 <entry><p> <codeph>help</codeph>  </p> </entry>
       
   119 <entry><p>Displays help text for the tool. </p> </entry>
       
   120 </row>
       
   121 <row>
       
   122 <entry><p> <codeph>libpath=&lt;search-paths&gt;</codeph>  </p> </entry>
       
   123 <entry><p>A semi-colon separated list of search paths that the tool should
       
   124 use to locate import libraries. </p> </entry>
       
   125 </row>
       
   126 <row>
       
   127 <entry><p> <codeph>linkas=&lt;name&gt;</codeph>  </p> </entry>
       
   128 <entry><p>The internal name used in the image file for the executable. This
       
   129 can include information that specifies the executable version (in braces)
       
   130 and the UID3 (in square brackets). For example, <codeph>foo{00020001}[10011235].exe</codeph>,
       
   131 would be used for an executable <filepath>foo.exe</filepath>, at version 2.1,
       
   132 with UID3 <codeph>0x10011235</codeph>. </p> </entry>
       
   133 </row>
       
   134 <row>
       
   135 <entry><p> <codeph>log=&lt;file-path&gt;</codeph>  </p> </entry>
       
   136 <entry><p>Redirects console log messages to the specified file </p> </entry>
       
   137 </row>
       
   138 <row>
       
   139 <entry><p> <codeph>compressionmethod [none | inflate | bytepair]</codeph>  </p> </entry>
       
   140 <entry><p>The compression method to be used to compress the files. The tool
       
   141 uses the <codeph>inflate</codeph> method by default. </p> <p>The following
       
   142 compression methods can be used: </p> <p><table id="GUID-66F65203-1E4F-56D9-9AB8-7D47420C0B3B">
       
   143 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
       
   144 <tbody>
       
   145 <row>
       
   146 <entry><p>none </p> </entry>
       
   147 <entry><p>The files are not compressed. This is equivalent to using the <codeph>uncompressed</codeph> keyword. </p> <p> <b>Note</b>:
       
   148 The <codeph>uncompressed</codeph> keyword, when specified, takes precedence
       
   149 over any <codeph>compressionmethod</codeph>. </p> </entry>
       
   150 </row>
       
   151 <row>
       
   152 <entry><p>inflate </p> </entry>
       
   153 <entry><p>Compresses executable files using the default (Deflate, Huffman+LZ77)
       
   154 algorithm. </p> </entry>
       
   155 </row>
       
   156 <row>
       
   157 <entry><p>bytepair </p> </entry>
       
   158 <entry><p>Compresses executable files using the bytepair algorithm. Bytepair
       
   159 compression allows faster decompression than the default Deflate, Huffman+LZ77
       
   160 algorithm and supports demand paging by performing compression and decompression
       
   161 of code in independent 4KB pages. </p> </entry>
       
   162 </row>
       
   163 </tbody>
       
   164 </tgroup>
       
   165 </table> </p> </entry>
       
   166 </row>
       
   167 <row>
       
   168 <entry><p> <codeph>namedlookup</codeph>  </p> </entry>
       
   169 <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
       
   170 the binary size as Symbian platform binaries do not include symbol information
       
   171 by default. </p> <p> <b>Note</b>: If the tool is invoked by the Symbian platform
       
   172 build toolchain, symbol lookup is enabled for the <codeph>STDEXE</codeph> and <codeph>STDDLL</codeph> target
       
   173 types only. To enable symbol lookup for other target types, the tool must
       
   174 be invoked independently. </p> </entry>
       
   175 </row>
       
   176 <row>
       
   177 <entry><p> <codeph>noexportlibrary</codeph>  </p> </entry>
       
   178 <entry><p>Suppress implicit exports. </p> <p>As part of the library exports,
       
   179 the RVCT tools generate items not marked as <codeph>EXPORT_C</codeph> in the
       
   180 source code. These include Virtual Table and Run-time Type Information entries.
       
   181 Specifying this option causes the tool not to include these exports. </p> <p>For
       
   182 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>
       
   183 </row>
       
   184 <row>
       
   185 <entry><p> <codeph>output=&lt;file-path&gt;</codeph>  </p> </entry>
       
   186 <entry><p>Output E32 image file name. </p> </entry>
       
   187 </row>
       
   188 <row>
       
   189 <entry><p> <codeph>sid=&lt;secure-ID&gt;</codeph>  </p> </entry>
       
   190 <entry><p>Secure ID (SID) of the executable. </p> <p>An SID identifies an
       
   191 executable uniquely on a phone. This allows service providers such as servers
       
   192 to make security checks on the basis of the executable making the request. </p> </entry>
       
   193 </row>
       
   194 <row>
       
   195 <entry><p> <codeph>stack=&lt;size&gt;</codeph>  </p> </entry>
       
   196 <entry><p>Specifies the stack size for a process in bytes. </p> <p>The default
       
   197 is 0. </p> </entry>
       
   198 </row>
       
   199 <row>
       
   200 <entry><p> <codeph>sysdef=&lt;ordinal-number&gt;, &lt;symbol&gt;</codeph>  </p> </entry>
       
   201 <entry><p>This option forces the specified symbol to be exported at the specified
       
   202 ordinal position. </p> <p>This is required for some target types (polymorphic
       
   203 DLLs). </p> </entry>
       
   204 </row>
       
   205 <row>
       
   206 <entry><p> <codeph>targettype=&lt;target-type&gt;</codeph>  </p> </entry>
       
   207 <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,
       
   208 a <xref href="GUID-9605B59D-F9DB-4BA3-8C87-1C5205976CBB.dita#GUID-9605B59D-F9DB-4BA3-8C87-1C5205976CBB/GUID-cd54fdec-8587-4d01-b839-d23af95c76b8">Custom
       
   209 target</xref> is assumed. </p> <p>An <codeph>IMPLIB</codeph> target is assumed
       
   210 if <codeph>--elfinput</codeph> is not specified and <codeph>-deffilein</codeph> is
       
   211 specified. </p> </entry>
       
   212 </row>
       
   213 <row>
       
   214 <entry><p> <codeph>uid1=&lt;UID&gt;</codeph>  </p> </entry>
       
   215 <entry><p>UID 1 value for output executable. </p> </entry>
       
   216 </row>
       
   217 <row>
       
   218 <entry><p> <codeph>uid2=&lt;UID&gt;</codeph>  </p> </entry>
       
   219 <entry><p>UID 2 value for output executable. </p> <p>The default is 0. </p> </entry>
       
   220 </row>
       
   221 <row>
       
   222 <entry><p> <codeph>uid3=&lt;UID&gt;</codeph>  </p> </entry>
       
   223 <entry><p>UID 3 value for output executable. </p> <p>The default is 0. </p> </entry>
       
   224 </row>
       
   225 <row>
       
   226 <entry><p> <codeph>uncompressed</codeph>  </p> </entry>
       
   227 <entry><p>Specifies that the target executable must not be compressed. </p> <p>By
       
   228 default, the target executable is compressed. </p> </entry>
       
   229 </row>
       
   230 <row>
       
   231 <entry><p> <codeph>unfrozen</codeph>  </p> </entry>
       
   232 <entry><p>Specifies that the input DEF file (specified with <codeph>--definput</codeph>)
       
   233 is not treated as frozen. This means that the tool will not report errors
       
   234 if the executable does not contain symbols that are specified in the DEF file. </p> </entry>
       
   235 </row>
       
   236 <row>
       
   237 <entry><p> <codeph>vid</codeph>  </p> </entry>
       
   238 <entry><p>Vendor ID (VID) of the executable. </p> <p>A VID allows service
       
   239 providers such as servers to make security checks on the basis of the supplier
       
   240 of the executable making the request. </p> </entry>
       
   241 </row>
       
   242 </tbody>
       
   243 </tgroup>
       
   244 </table> <p>The following table specifies whether an option is required, optional
       
   245 or not applicable (N/A) for the main use cases of the tool (namely creating
       
   246 DLLs, EXEs, EXEs with exports (EXEXP target), and import libraries (IMPLIB
       
   247 target)). </p> <table id="GUID-E566D771-4098-5A82-8FBF-4C061D76BEEF">
       
   248 <tgroup cols="5"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/><colspec colname="col3"/><colspec colname="col4"/>
       
   249 <tbody>
       
   250 <row>
       
   251 <entry><p> <b>Option</b>  </p> </entry>
       
   252 <entry><p> <b>DLL (static/polymorphic)</b>  </p> </entry>
       
   253 <entry><p> <b>EXE</b>  </p> </entry>
       
   254 <entry><p> <b>EXEXP</b>  </p> </entry>
       
   255 <entry><p> <b>IMPORT LIB</b>  </p> </entry>
       
   256 </row>
       
   257 <row>
       
   258 <entry><p> <codeph>capability</codeph>  </p> </entry>
       
   259 <entry><p>optional </p> </entry>
       
   260 <entry><p>optional </p> </entry>
       
   261 <entry><p>optional </p> </entry>
       
   262 <entry><p>N/A </p> </entry>
       
   263 </row>
       
   264 <row>
       
   265 <entry><p> <codeph>debuggable</codeph>  </p> </entry>
       
   266 <entry><p>N/A </p> </entry>
       
   267 <entry><p>optional </p> </entry>
       
   268 <entry><p>optional </p> </entry>
       
   269 <entry><p>N/A </p> </entry>
       
   270 </row>
       
   271 <row>
       
   272 <entry><p> <codeph>dlldata</codeph>  </p> </entry>
       
   273 <entry><p>optional </p> </entry>
       
   274 <entry><p>N/A </p> </entry>
       
   275 <entry><p>N/A </p> </entry>
       
   276 <entry><p>N/A </p> </entry>
       
   277 </row>
       
   278 <row>
       
   279 <entry><p> <codeph>definput</codeph>  </p> </entry>
       
   280 <entry><p>optional </p> </entry>
       
   281 <entry><p>N/A </p> </entry>
       
   282 <entry><p>optional </p> </entry>
       
   283 <entry><p>required </p> </entry>
       
   284 </row>
       
   285 <row>
       
   286 <entry><p> <codeph>defoutput</codeph>  </p> </entry>
       
   287 <entry><p>required </p> </entry>
       
   288 <entry><p>N/A </p> </entry>
       
   289 <entry><p>required </p> </entry>
       
   290 <entry><p>N/A </p> </entry>
       
   291 </row>
       
   292 <row>
       
   293 <entry><p> <codeph>dso</codeph>  </p> </entry>
       
   294 <entry><p>required </p> </entry>
       
   295 <entry><p>N/A </p> </entry>
       
   296 <entry><p>required </p> </entry>
       
   297 <entry><p>required </p> </entry>
       
   298 </row>
       
   299 <row>
       
   300 <entry><p> <codeph>elfinput</codeph>  </p> </entry>
       
   301 <entry><p>required </p> </entry>
       
   302 <entry><p>required </p> </entry>
       
   303 <entry><p>required </p> </entry>
       
   304 <entry><p>N/A </p> </entry>
       
   305 </row>
       
   306 <row>
       
   307 <entry><p> <codeph>fixedaddress</codeph>  </p> </entry>
       
   308 <entry><p>N/A </p> </entry>
       
   309 <entry><p>optional </p> </entry>
       
   310 <entry><p>optional </p> </entry>
       
   311 <entry><p>N/A </p> </entry>
       
   312 </row>
       
   313 <row>
       
   314 <entry><p> <codeph>heap</codeph>  </p> </entry>
       
   315 <entry><p>N/A </p> </entry>
       
   316 <entry><p>optional </p> </entry>
       
   317 <entry><p>optional </p> </entry>
       
   318 <entry><p>N/A </p> </entry>
       
   319 </row>
       
   320 <row>
       
   321 <entry><p> <codeph>libpath</codeph>  </p> </entry>
       
   322 <entry><p>optional </p> </entry>
       
   323 <entry><p>optional </p> </entry>
       
   324 <entry><p>optional </p> </entry>
       
   325 <entry><p>N/A </p> </entry>
       
   326 </row>
       
   327 <row>
       
   328 <entry><p> <codeph>linkas</codeph>  </p> </entry>
       
   329 <entry><p>required </p> </entry>
       
   330 <entry><p>required </p> </entry>
       
   331 <entry><p>required </p> </entry>
       
   332 <entry><p>required </p> </entry>
       
   333 </row>
       
   334 <row>
       
   335 <entry><p> <codeph>noexportlibrary</codeph>  </p> </entry>
       
   336 <entry><p>optional </p> </entry>
       
   337 <entry><p>N/A </p> </entry>
       
   338 <entry><p>optional </p> </entry>
       
   339 <entry><p>N/A </p> </entry>
       
   340 </row>
       
   341 <row>
       
   342 <entry><p> <codeph>output</codeph>  </p> </entry>
       
   343 <entry><p>required </p> </entry>
       
   344 <entry><p>required </p> </entry>
       
   345 <entry><p>required </p> </entry>
       
   346 <entry><p>N/A </p> </entry>
       
   347 </row>
       
   348 <row>
       
   349 <entry><p> <codeph>sid</codeph>  </p> </entry>
       
   350 <entry><p>required </p> </entry>
       
   351 <entry><p>required </p> </entry>
       
   352 <entry><p>required </p> </entry>
       
   353 <entry><p>N/A </p> </entry>
       
   354 </row>
       
   355 <row>
       
   356 <entry><p> <codeph>stack</codeph>  </p> </entry>
       
   357 <entry><p>N/A </p> </entry>
       
   358 <entry><p>optional </p> </entry>
       
   359 <entry><p>optional </p> </entry>
       
   360 <entry><p>no </p> </entry>
       
   361 </row>
       
   362 <row>
       
   363 <entry><p> <codeph>sysdef</codeph>  </p> </entry>
       
   364 <entry><p>Required for polymorphic DLL target types only </p> </entry>
       
   365 <entry><p>N/A </p> </entry>
       
   366 <entry><p>N/A </p> </entry>
       
   367 <entry><p>N/A </p> </entry>
       
   368 </row>
       
   369 <row>
       
   370 <entry><p> <codeph>targettype</codeph>  </p> </entry>
       
   371 <entry><p>DLL, or polymorphic DLL target type </p> </entry>
       
   372 <entry><p>EXE </p> </entry>
       
   373 <entry><p>EXEXP </p> </entry>
       
   374 <entry><p>IMPLIB </p> </entry>
       
   375 </row>
       
   376 <row>
       
   377 <entry><p> <codeph>uid1</codeph>  </p> </entry>
       
   378 <entry><p>required </p> </entry>
       
   379 <entry><p>required </p> </entry>
       
   380 <entry><p>required </p> </entry>
       
   381 <entry><p>N/A </p> </entry>
       
   382 </row>
       
   383 <row>
       
   384 <entry><p> <codeph>uid2</codeph>  </p> </entry>
       
   385 <entry><p>optional </p> </entry>
       
   386 <entry><p>optional </p> </entry>
       
   387 <entry><p>optional </p> </entry>
       
   388 <entry><p>N/A </p> </entry>
       
   389 </row>
       
   390 <row>
       
   391 <entry><p> <codeph>uid3</codeph>  </p> </entry>
       
   392 <entry><p>optional </p> </entry>
       
   393 <entry><p>optional </p> </entry>
       
   394 <entry><p>optional </p> </entry>
       
   395 <entry><p>N/A </p> </entry>
       
   396 </row>
       
   397 <row>
       
   398 <entry><p> <codeph>uncompressed</codeph>  </p> </entry>
       
   399 <entry><p>optional </p> </entry>
       
   400 <entry><p>optional </p> </entry>
       
   401 <entry><p>optional </p> </entry>
       
   402 <entry><p>N/A </p> </entry>
       
   403 </row>
       
   404 <row>
       
   405 <entry><p> <codeph>unfrozen</codeph>  </p> </entry>
       
   406 <entry><p>optional </p> </entry>
       
   407 <entry><p>N/A </p> </entry>
       
   408 <entry><p>optional </p> </entry>
       
   409 <entry><p>N/A </p> </entry>
       
   410 </row>
       
   411 <row>
       
   412 <entry><p> <codeph>vid</codeph>  </p> </entry>
       
   413 <entry><p>required </p> </entry>
       
   414 <entry><p>required </p> </entry>
       
   415 <entry><p>required </p> </entry>
       
   416 <entry><p>N/A </p> </entry>
       
   417 </row>
       
   418 </tbody>
       
   419 </tgroup>
       
   420 </table> </section>
       
   421 </conbody></concept>