--- a/Symbian3/SDK/Source/GUID-64D2B0E2-BB5D-4009-ACE5-7A3503016341.dita Fri Jul 16 17:23:46 2010 +0100
+++ b/Symbian3/SDK/Source/GUID-64D2B0E2-BB5D-4009-ACE5-7A3503016341.dita Tue Jul 20 12:00:49 2010 +0100
@@ -12,7 +12,7 @@
<concept id="GUID-64D2B0E2-BB5D-4009-ACE5-7A3503016341" xml:lang="en"><title>Troubleshooting
Tips</title><shortdesc>This section addresses the basic differences in the way things
are done in Symbian Platform and in Linux. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
-<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-11-1-1-5-1-3-1-9-1-3-1"> <title>Symbian
+<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-13-1-1-5-1-3-1-9-1-3-1"> <title>Symbian
directory structure</title> <p>In Symbian platform, project source files
are arranged based on the directory pattern shown below.</p><table id="GUID-AF9A4B8F-EC2B-4BBA-AE84-9B49F2081B4F">
<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
@@ -36,7 +36,7 @@
</tbody>
</tgroup>
</table> <p>The developer can choose whether to follow these tips.</p></section>
-<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-11-1-1-5-1-3-1-9-1-3-2"> <title>EXPORT_C,
+<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-13-1-1-5-1-3-1-9-1-3-2"> <title>EXPORT_C,
DEF file and ordinal numbers</title> <p>This applies only for the DLL
target type. If a DLL wants to export an API, the code definition should start
with the macro <codeph>EXPORT_C</codeph>.</p><codeblock xml:space="preserve">// Declaration
@@ -94,7 +94,7 @@
return something;
}
</codeblock> </section>
-<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-11-1-1-5-1-3-1-9-1-3-3"> <title><codeph>dlsym()</codeph> or <codeph>g_module_symbol()</codeph></title>
+<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-13-1-1-5-1-3-1-9-1-3-3"> <title><codeph>dlsym()</codeph> or <codeph>g_module_symbol()</codeph></title>
<p>Since DLL entry points are not exported by name, DLL symbol lookup
functions do not work on Symbian platform. For more information about alternatives
suggested on Symbian platform, see <xref href="GUID-9D278187-8B5E-581D-9869-EE8861048F93.dita">Dynamic
@@ -105,7 +105,7 @@
symbol parameter (refer the library's list of exports, the DEF file for the
function's ordinal number):</p><codeblock xml:space="preserve">dlsym(&handle, "foo")
</codeblock><p>needs to be changed to:</p><codeblock xml:space="preserve">dlsym (&handle, "3")</codeblock></section>
-<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-11-1-1-5-1-3-1-9-1-3-4"><title>Problem with
+<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-13-1-1-5-1-3-1-9-1-3-4"><title>Problem with
a variable list of arguments in macros</title><p>This section suggests a way
to overcome the problems faced when macros with a variable list of arguments
are used.</p><codeblock xml:space="preserve">#define DEBUG(a,...)</codeblock><p>The above statement
@@ -114,14 +114,14 @@
static inline void _DEBUG (const char *a, ...)
{
}</codeblock> </section>
-<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-11-1-1-5-1-3-1-9-1-3-5"> <title>Keep
+<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-13-1-1-5-1-3-1-9-1-3-5"> <title>Keep
changes to OSS to a minimum</title><p>While porting the OSS code, keep the
changes to the OSS code as few as possible. The OSS code is already tested
and used by a bigger community, and is unlikely to have any compilation errors
or major logical errors. In many cases code changes that are necessary brings
potential logical flaws to the OSS port. Minimum changes to the OSS code while
porting also helps in merging to the new OSS. </p> </section>
-<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-11-1-1-5-1-3-1-9-1-3-6"> <title>Exporting
+<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-13-1-1-5-1-3-1-9-1-3-6"> <title>Exporting
variables from a DLL</title> <p>Exporting data from a DLL is not allowed
in Symbian platform . The following pattern can be used:</p><ol>
<li id="GUID-FE2ACA35-3472-47C2-8C3F-B65CAEE09C66"><p>Do not export global
@@ -140,13 +140,13 @@
IMPORT_C int* GlbData ();
#define globalVal (*GlbData())</codeblock></li>
</ol> </section>
-<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-11-1-1-5-1-3-1-9-1-3-7"> <title>Application
+<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-13-1-1-5-1-3-1-9-1-3-7"> <title>Application
is not loaded</title> <p>The absence of the dependent libraries could
be one of the reasons for the application not to load in the mobile device.
On the target device, Symbian platform looks for libraries in <filepath>c:\sys\bin</filepath> or
in <filepath>z:\sys\bin</filepath>.</p><p>Do make sure that all the libraries
are present in either of the above-mentioned libraries. </p> </section>
-<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-11-1-1-5-1-3-1-9-1-3-8"> <title>Capabilities
+<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-13-1-1-5-1-3-1-9-1-3-8"> <title>Capabilities
not known</title> <p>Capabilities are specified in the MMP file. The
primary information source is the P.I.P.S. API reference documentation. If
problems with capabilities remain, one known method to find the capability
@@ -155,7 +155,7 @@
for release code it is good practice to give a valid capability in the MMP
file in order to have the application successfully signed. The following is
a sample of a capability error found in the [Debug Messages] window. </p><codeblock xml:space="preserve">*PlatSec* ERROR - Capability check failed - Process hellogst.exe[10015942]0001 was checked by Thread c32exe.exe[101f7989]0001::ESock_IP and was found to be missing the capabilities: NetworkServices. </codeblock> </section>
-<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-11-1-1-5-1-3-1-9-1-3-9"> <title>Environment
+<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-13-1-1-5-1-3-1-9-1-3-9"> <title>Environment
variables</title> <p>At the moment, environment variables are not completely
supported in Symbian C++. Therefore be wary of using library functions like <codeph>getenv()</codeph> which
work on environment variables. Make sure the library initialization routine
@@ -166,7 +166,7 @@
{
setenv ("JPEGMEM ", "XXXXX", 1);
}</codeblock> </section>
-<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-11-1-1-5-1-3-1-9-1-3-10"> <title>Assembly
+<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-13-1-1-5-1-3-1-9-1-3-10"> <title>Assembly
code</title> <p>The syntax for inline assembly code is different in
Symbian platform. The following is a code snippet of assembly code syntax
in Symbian platform.</p><codeblock xml:space="preserve">EXPORT_C __NAKED__ TUint16 TTemplate::Register16(TUint anAddr)
@@ -180,7 +180,7 @@
} </codeblock><p>In common practice the assembly code has the extension <filepath>.CIA</filepath> in
Symbian platform, whereas in Linux the assembly code has the extension <filepath>.S</filepath>.
</p> </section>
-<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-11-1-1-5-1-3-1-9-1-3-11"> <title>Glossary</title>
+<section id="GUID-77D7347D-8DEC-45D0-A677-8FDBDFB8FF81-GENID-1-10-1-13-1-1-5-1-3-1-9-1-3-11"> <title>Glossary</title>
<p>The following table lists terms used in Linux and their approximate
equivalents in Symbian platform: </p><table id="GUID-BFB874F5-148B-44B2-A110-F37AC084756B">
<tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>