Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries. Thanks for all your past and future contributions.

Bundling libraries in Maemo packages for Ovi store

From Wiki
Jump to: navigation, search

Archived.pngArchived: 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}}.

The article is believed to be still valid for the original topic scope.

Article Metadata
Created: achipa (31 Dec 2010)
Last edited: lpvalente (10 Mar 2013)



When submitting packages to the Ovi store, they cannot depend on libraries or other content from other repositories, only the packages found in the official firmware. If you need such libraries, you will have to bundle them with your project in the following manner. Iin this example we'll use libvorbisidec1 package from Extras:

Acquire the necessary library files

You can either build them yourself in scratchbox, or simply download them from their repository


Make sure that you get the right architecture binaries (i.e. ARM for the Maemo target or X86 for the Simulator or Desktop builds)

Copy to project

After extracting the files from the package, copy them to a directory under your project, for example lib

Install folder

Declare the lib folder as an installable in your .pro file:

maemo5 {
  vorbislibs.path = /opt/myproject/lib
  vorbislibs.files = lib/*
  INSTALLS += vorbislibs

Define library path

The previous step will install the libs, but the OS will not find them upon launching the executable so the Exec line in the myproject.desktop file (under Other files in your project) needs to be altered to temporarily reference this library path.

Other files/myproject.desktop

[Desktop Entry]
Exec=LD_LIBRARY_PATH=/opt/myproject/lib /opt/usr/bin/myproject

After this, your package will be build with the lib included and used by your package. Please note that you will have to fulfill any 3rd party license requirements of the included content or libraries yourself.

This page was last modified on 10 March 2013, at 13:41.
31 page views in the last 30 days.