[maemo-developers] extras repository problems
From: Graham Cobb g+770 at cobb.uk.netDate: Sat Jan 17 15:10:53 EET 2009
- Previous message: extras repository problems
- Next message: extras repository problems
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Saturday 17 January 2009 12:25:04 Till Harbaum / Lists wrote:
> > Actually, the autobuilder doesn't check installation dependencies, only
> > build
>
> It creates the dependencies. So everything required to build was definitely
> available during the build process and thus everything to run it was also
> there.
No, the autobuilder doesn't create dependencies -- the package debian/control
file creates the dependencies and **can** specify anything you like.
However, it **normally** includes "${shlibs:Depends}" to define dependencies
on shared libraries. ${shlibs:Depends} is (effectively) set up from commands
in the debian/rules file. If you are using the common debhelper calls your
debian/rules will probably have a call to dh_shlibdeps which is what sets up
${shlibs:Depends}.
You can read the man pages for dh_shlibdeps and dpkg-shlibdeps to see what
that does but the bottom line is that it uses data supplied by the shared
library itself to set the dependency. So, if that is what is setting the
dependency (instead of it being hard coded in debian/control) then it should,
indeed, be being set correctly automatically during the build. But this is
not a function of the autobuilder -- it is a combination of your package
files (debian/control and debian/rules) and the shared library you are
depending on (libgoocanvas-common in this case).
> > It is a really bad idea for osm2go to have an exact version dependency
> > (the "=" in the dependency) because it means it will be broken if someone
>
> But that's being added automatically by the build process. The question is:
> How and why does this get added?
Presumably you are using dh_shlibdeps, so it is using data supplied by the
library. The library tells it what the condition has to be, so it is
libgoocanvas which is forcing the "=". You might want to complain to the
maintainer of that. There may be a good reason but it does make life
difficult for packages which need to depend on libgoocanvas.
For your future information, libgoocanvas is probably using dh_makeshlibs to
set up the dependency information. Check out the man page for that (and
the -V option in particular) if you want to see how that is used.
There you are, more than you ever wanted to know about how debhelper handles
shared library dependencies!
Graham
- Previous message: extras repository problems
- Next message: extras repository problems
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
