[maemo-developers] Using a library package in Maemo sysroot

From: Tomi Ollila tomi.ollila at guru.guru-group.fi
Date: Wed Aug 31 12:28:56 EEST 2011
On Wed, 31 Aug 2011 10:00:48 +0200, Christian Kandeler <christian.kandeler at nokia.com> wrote:
> On Tue, 2011-08-30 at 16:07 -0400, ext David Talmage wrote:
> > I'm having trouble deploying an application to my N900. When QtCreator
> > builds the application package, dpkg-shlibdeps claims that it cannot
> > find the dependency information for one library. This is what I need
> > help fixing. The error message is
> > 
> > 
> > dpkg-shlibdeps: failure: no dependency information found
> > for /home/talmage/QtSDK-1.1/Maemo/4.6.2/sysroots/fremantle-arm-sysroot-20.2010.36-2-slim/opt/usr/lib/libqcontactchooserdialog.so.1 (used by debian/panicbutton/opt/usr/bin/panicbutton).
> > 
> > I made the library myself. It is on the phone and in my Maemo sysroot.
> > QtCreator put it in the sysroot for me using this additional
> > deployment step:
> >
> > mad-admin xdpkg --install libqcontactchooserdialog_1_0_0_armel.deb
> >
> > I copied the libqcontactchooserdialog.shlibs file from my phone into
> > var/lib/dpkg/info in the sysroot. That changed nothing.
> 
> Are you saying that mad-admin xdpkg does not install the shlibs file
> into the sysroot? That sounds like a bug to me.
> Anyway, could it be that the shlibs file is somehow not containing the
> correct information? Have you checked its contents and compared with
> what the man page for deb-shlibs says?

The reason is that that such an old MADDE does not support checking those
dependencies in xdpkg -installed packages:

$ git log patches/dpkg-1.14.25.diff | head -7
commit 7607722394ea331ed887e4b5e2e50d29271f9cd8
Author: Pasi S...
Date:   Mon Apr 18 13:14:38 2011 +0300

    added xdpkg extended package support for dpkg-shlibdebs.

commit 907858016b35160a395b00caee854450b1dade2c

... In addition to Pasi's above patch I made some changes to xdpkg.pl,
which is available in

https://meego.gitorious.org/meego-developer-tools/madde/blobs/master/src/madlib/xdpkg.pl

As re-creating dpkg-shlibs is somewhat less trivial I'll include newer
version as a gzipped attachment of this email.


So, in order to test whether these changed dpkg tools fix the problem you
need to 'taint' your madde installation, first do:

$ mad-admin xdpkg --list

$ for p in <xdpkg-installed-packages>; do mad-admin xdpkg --purge $p; done

$ maddir=/home/talmage/QtSDK-1.1/Maemo/4.6.2/

$ find $maddir/madlib -name '*xdpkg*'

$ mkdir $maddir/backup
$ mv /path/to/found/*xdpkg* $maddir/backup
$ mv $maddir/madbin/dpkg-shlibdeps $maddir/backup
$ cp /path/to/xdpkg.pl /path/to/found/*xdpkg*
$ cp /path/to/dpkg-shlibdeps $maddir/madbin

And check if things work; if not, just rename files from
$maddir/backup back to their original locations.

> Christian

Tomi

-------------- next part --------------
A non-text attachment was scrubbed...
Name: dpkg-shlibdeps.gz
Type: application/x-gzip
Size: 8054 bytes
Desc: dpkg-shlibdeps
URL: <http://lists.maemo.org/pipermail/maemo-developers/attachments/20110831/0fa8c0af/attachment.bin>
More information about the maemo-developers mailing list