×
Namespaces

Variants
Actions

Missing Qt Quick Components in Nokia Store submission (Known Issue)

From Nokia Developer Wiki
Jump to: navigation, search

This article explains how to avoid or correct the missing Qt Quick Components dependency in Qt applications, a frequent cause for Nokia Store QA failures

Article Metadata
Tested with
SDK: Qt SDK 1.2
Compatibility
Platform(s): Qt
Symbian
Article
Created: ltomuta (06 Jun 2013)
Last edited: ltomuta (13 Jun 2013)

Contents

Introduction

When Qt applications are submitted to Nokia Store they are expected to be packaged with the Nokia Smart Installer wrapper and having all relevant Qt packages which are used by the application listed as dependencies. This way, at install time, the Smart Installer can ensure that all app's prerequisites are available, or if missing they are being fetched and installed. If an application package is being scanned and a contradiction is found between the APIs used and the packages to which it declares dependency, the application will be flagged and if the issue is significant, the QA team will reject that submission.

Problem

A significant number of QA failures are related to the above described requirement. In particular, due to a bug in Qt SDK's installer framework, Qt apps may have their .sis package generated without the required Qt Quick Components (QQC) dependency, despite the project being correctly configured.

How to detect the problem before submission?

A software package dependency is generated in the SIS file by adding the following line of code to the *_template.pkg file

"(0x200346DE),1, 1, 0 ,{"QtQuickComponents"}"

Knowing this, please make sure to quickly inspect the _template.pkg before you submit the SIS file to the Nokia Store. If the above line is missing, or similarly the line that defines the dependency to any of the Smart Installer supported packages that you know your application is using, please take corrective actions and only submit your app once these issues are fixed.

How to fix the problem?

As mentioned above the problem seems to be caused by an SDK installer bug. It appears that when applying SDK updates the Qt Quick Components package gets to be [partially] uninstalled from the SDK.

To fix the problem, start the Qt SDK Maintenance tool ( c:\QtSDK\SDKMaintenanceTool.exe ) and from its Package Manager, unselected the component "Qt Quick Components for Symbian" then click Next to trigger that package's uninstallation.

Qqc.png

Then start the maintenance tool again and this time check the box to trigger the re-installation of the QQC component. Build the project again and verify that the expected dependency is now generated on the *_template.pkg file.

Alternative solution for this problem include a complete clean re-install of the SDK or qmake scripting in project's *.pro file to overide the default generation of the dependency. The pkg_prerules component of the DEPLOYMENT qmake variable can be used to specify the dependency strings to be added to the *_template.pkg file. See Qt documentation.

This page was last modified on 13 June 2013, at 19:30.
176 page views in the last 30 days.
×