Namespaces
Variants
Actions
(Difference between revisions)

Archived:Creating dependencies to Open C components

Jump to: navigation, search

Revision as of 10:42, 14 June 2012



Template:KBTS

Article Metadata

Tested with
Devices(s): All (S60)

Compatibility
Platform(s): S60 3rd Edition
S60 3rd Edition, FP1
S60 3rd Edition, FP2
S60 5th Edition

Article
Keywords: n/a
Created: User:Technical writer 2 (June 25, 2007, updated December 17, 2008)
Last edited: hamishwillee (14 Jun 2012)
Archived.png
Archived: This article is archived because it is not considered relevant for third-party developers creating commercial solutions today. If you think this article is still relevant, let us know by adding the template {{ReviewForRemovalFromArchive|user=~~~~|write your reason here}}.

Description

To ensure that an Open C application will work, it is worthwhile to create dependencies to any Open C plug-in components that are required to run the application. This way the user will be warned during installation if Open C libraries are not present in the device.


Solution

Creating dependencies to other components is done by declaring the required components in the PKG file:

  (componentUID), version-range, {"Name for lang 1","Name for lang n",...}

For Open C plug-in components, the dependencies can be declared as follows:

  (0x20009a80), 1, 0, 0, {"Symbian OS PIPS"}
(0x20009aa2), 1, 0, 0, {"Symbian OS STDIOSERVER"}
(0x10281f34), 1, 0, 0, {"Open C LIBSSL"}
(0x10281f2c), 1, 0, 0, {"Open C GLIBRARY"}

In the above example, the dependencies are created to the four OpenC components:

  • ’Symbian OS STDIOSERVER’ (installed from stdioserver.sis)
  • ’Symbian OS PIPS’ (pips_s60_wp.sis)
  • ’Open C LIBSSL’ (openc_ssl.sis)
  • ’Open C GLIBRARY’ (openc_glib.sis)


Dependencies may also be targeted to specific component versions:

  (0x0123BABE), 1, 2, 0 ~ *, *, *, {"ComponentName"} ; Version greater than or
 ; equal to 1.2.0 required
 
(0x0123BABE), 1, 2, 0 ~ 2, 0, 0, {"ComponentName"} ; Version from 1.2.0 to
 ; 2.00 required
 
(0x0123BABE), *, *, * ~ 2, 0, 0, {"ComponentName"} ; Any older version up to
 ; (and including) 2.0.0
 ; required

From S60 3rd Edition, Feature Pack 2 onwards, Open C libraries are part of the S60 platform and therefore always included in the device software builds. It is possible to check if the Open C libraries are located on the ROM (Z: drive) during installation using the following IF statement:

  IF exists(z:\system\install\openc_stdlibs_stub.sis)
 ; Open C libraries are located on ROM
ENDIF
112 page views in the last 30 days.
Nokia Developer aims to help you create apps and publish them so you can connect with users around the world.

京ICP备05048969号  © Copyright Nokia 2013 All rights reserved