Identifying Dependencies when Developing for Mer/Nemo

I am currently working on packaging and publishing some of my applications for Mer/Nemo. Within that process I needed to lookup missing dependencies quite often. In this post I will write about some ways I found useful for looking up dependencies within Mer/Nemo.

Note that when defining dependencies for Mer/Nemo the naming scheme of some dependencies has changed as compared to MeeGo/Harmattan. If you have Spectacle installed you can find a list with the “changed” dependency names in the file “/usr/share/spectacle/pkgconfig-provides.csv”. There the new, preferred name for dependencies is the one surrounded in brackets in the final “pkgconfig(NewDependencyName)” entry. Spectacle will also notify you in case you are using a deprecated name.

When you are having trouble looking up required dependencies the “zypper wp” (“wp” for “what-provides”) command can be quite handy as well. E.g., assume your newly packaged app refuses to start because it is missing, say the QML module “QtMobility.systeminfo”. You could then identify the required file on a MeeGo/Harmattan installation or in MeeGo/Harmattan scratchbox like this:

[sbox-HARMATTAN_ARMEL: ~] > find /usr/lib/qt4 -iname "*systeminfo*"
/usr/lib/qt4/imports/QtMobility/systeminfo
/usr/lib/qt4/imports/QtMobility/systeminfo/libdeclarative_systeminfo.so

Knowing that you are looking for “libdeclarative_systeminfo.so” you can then use “zypper wp” to get the package name of the dependency (from within a running Mer/Nemo installation):

[root@localhost ~]# zypper wp libdeclarative_systeminfo.so
Loading repository data...
Reading installed packages...
S | Name                      | Type    | Version    | Arch    | Repository
--+---------------------------+---------+------------+---------+-----------
i | libdeclarative-systeminfo | package | 1.2.0-1.46 | armv7hl | mer-core

In the next post I will write about the general process I used for packaging and publishing my applications for Mer/Nemo. I post this here separately in order to keep the following post a little bit more focused on the actual packaging and publishing instead of cluttering it with too much information.

Advertisements
This entry was posted in Misc., Snippets and tagged , , . Bookmark the permalink.

One Response to Identifying Dependencies when Developing for Mer/Nemo

  1. Pingback: Packaging and Publishing MeeGo/Harmattan Applications for Mer/Nemo via OBS « ruedigergad

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s