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

From: David Talmage talmage at acm.org
Date: Wed Aug 31 21:35:27 EEST 2011
[Replying to both Christian Kandeler and Tomi Ollila in this message.]

On Wednesday, August 31, 2011 05:28:56 AM Tomi Ollila wrote:
> 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?

Yes, the version of mad-admin I had did not install the shlibs file into the 
sysroot.

According to the deb-shlibs man page, libqcontactchooserdialog.shlibs should 
look like this:

libqcontactchooserdialog 1 libqcontactchooserdialog (>= 1.0-0)


Instead, mine looks like this:

libqcontactchooserdialog 1 libqcontactchooserdialog


In other words, it's missing the version number in the dependencies field.

After I followed Tomi's directions, I have 
$SYSROOT/madde_xpkgs/libqcontactchooserdialog.shlibs.  This is new, I think.

There isn't one in $SYSROOT/var/lib/dpkg/info.


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

Tomi, the new dpkg-shlibdeps and xdpkg files didn't fix the problem.  I get the 
same output as before when deploying my application.

Could this be related to the location of my library?  It's in 
$SYSROOT/opt/usr/lib instead of $SYSROOT/usr/lib.




More information about the maemo-developers mailing list