Nokia Smart Installer for Symbian Manual

Managing Dependencies

For Qt projects, qmake automatically generates two package files:

  • *_template.pkg, which contains the scripting to create the application installer package
  • *_installer.pkg, which contains the scripting to create the Smart Installer wrapper package

The *_template.pkg file includes PKG statements that declare the dependencies to the Qt components that the application uses, matching the version of Qt that the application is built against.

Note: Do not add dependencies into the package file as qmake will overwrite them. For example, if an application uses QtWebKit, declare it in the project file (*.pro) as follows:

QT += webkit

This automatically translates to a QtWebKit dependency added by qmake to the *_template.pkg:

 ; Dependency to Qt Webkit
 (0x200267C2), 4, 6, 3, {"QtWebKit"}

The only thing that you need to manage are the package UIDs of the two package files. The TARGET.UID3 value is be used as the package UID for the *_template.pkg file (application) while the DEPLOYMENT.installer_header value will be used as the package UID for the *_installer.pkg file (wrapper) as shown below in an example project file:

  symbian {
      # Change the UID3 (UID for your application) before release
      # using the 0x2XXXXXXX range UID assigned to you by Symbian Signed or Nokia
      # Publishing. Example UID:

      TARGET.UID3 = 0x2000D7D1

      # Change the package UID for the wrapper.
      # The only accepted values are 0xA000D7CE (for self-signed applications)
      # or 0x2002CCCF (for Nokia Store or Symbian Signed packages).
      # The default generated value is 0xA000D7CE.
      # Learn more about UIDs from http://wiki.forum.nokia.com/index.php/UID

      DEPLOYMENT.installer_header=0x2002CCCF
 }