Skip to content

Quick Symbian Factoid #7 : Symbian pkg major, minor & build number limits.

The Symbian native application sis package file(.pkg) describes the installation information like app name, install path and install files. It also lets the developer specify the application version. The version is specifed as a part of the standard header. Below is one such example:

#{"Focus event Example"},(0xE0000234),0,0,0

As you must have noticed & probably know the last three numbers are the major, minor and build version numbers. Ideally there should be no reasonable limit on the version numbers, like a million or billion. This is also confirmed by the SIS File format specification. According to the specification each number has 4 bytes allocated. So max limit for each number is 2^32. This sounds good , but in reality the limits are much much less. Try giving a slightly higher version number and makesis completely ignores it. For example consider a pkg header like the one below:

#{"Focus event Example"},(0xE0000234),2000,2000,0

Makesis throw a warning for this header specifying the real world limits on the version numbers :

Warning : The valid version number ranges are : (Major: 0..127) (Minor: 0..99 ) (Build: 0..32,767).

So any developer who wants to have an app with fancy version number like v2012.12.12, cannot have the same with Symbian native apps.

This is a really silly limit to have and with Symbian nearly reaching end of its life, we cannot even hope to have this silly limit removed.

  • Avril

    This post helped me.. tnx admin