[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#499292: dpkg-cross: cross package misses out libraries in sub-dirs



On 2008-09-17 21:03 +0100, Neil Williams wrote:
> > $> dpkg-deb --contents libgsmd0_0.8-12_arm.deb
> 
> I can't find this package in Debian 

Yes, sorry - it comes from openmoko, and we (Toby Churchill Ltd) have
hacked it about a fair amount. I don't have a link to an externally
accessible version right now, although one will be provided soon.

- the /usr/lib/$package/
> subdirectories should not normally be used for public libraries with
> symbols that need to be linked against any other object.
> 
> > lrwxrwxrwx root/root         0 2008-09-16 15:23 ./usr/lib/gsmd/libgsmd-machine_generic.so -> libgsmd-machine_generic.so.0.0.0
> 
> Isn't that a private application plugin|module ? Is there any actual
> purpose in providing these for linking during the build? Most plugins
> and private application libraries are explicitly prevented from being
> linked against other objects outside the application concerned 

Hmm, perhaps you are right. I had not appreciated that things below
/lib are normally deemed 'private'. Stuff certainly seerms to build
against the -cross package provided (wthout these objects in it), so I
guess they are not externally linked.

> - it is
> possible that even if these objects are provided, dpkg-shlibdeps may
> not be able to locate them.

I do have to use --ignore-missing to shlibdeps to make it build, but I
think that is to do with missing .shlibs files in the gsmd build, not
these sub-libs. I will check.

> "Shared object files (often .so files) that are not public libraries,
> that is, they are not meant to be linked to by third party executables
> (binaries of other packages), should be installed in subdirectories of
> the /usr/lib directory. Such files are exempt from the rules that
> govern ordinary shared libraries, except that they must not be
> installed executable and should be stripped.

OK. I guess gsmd is complying with this packaging rule, and in fct
everything is working as it should.

It was the dangling symlinks that made me assume things were broken,
combined with onyl a vague knowledge of the workings of libgsmd.

> True, the dangling symlinks aren't nice but I think dpkg-cross is doing
> the right thing here. 

I think you are right, so feel free to close this bug.

Wookey
-- 
Principal hats:  Balloonz - Toby Churchill - Aleph One - Debian
http://wookware.org/



Reply to: