[ gpsdrive ] svn insall questions
Andreas Putzo
andreas at putzo.net
Thu Sep 18 13:40:59 AKDT 2008
On Sep 17 18:50, chris h wrote:
> On Wednesday 17 September 2008 13:18:02 Andreas Putzo wrote:
>
> > It would if the dependencies of the binary package were sane.
> > ${shlibs:Depends} should take care of all of the library dependencies.
>
> Sorry for being a total nube at this but Im an old suse users ala 5.1 and this
> debian thing ala ubuntu still has me befuzzelled.
>
> If you have the time could you explain the above sentence, specifically the
> command ${shlibs:Depends} and its usage should it be relevant to the
> discussion.
The above comment was more intented as a pointer for Joerg to rewrite
the dependencies of the package :)
Basically, the debian packaging process is clever enough to determine
the shared library dependencies by itself. The command dh_shlibdeps which
is usually used during the (package-) build process does this and
replaces the variable ${shlibs:Depends} with the actual packages that
provide the shared libraries gpsdrive links with.
That way it shouldn't matter if the package is build on a debian or
ubuntu system (as long as the needed library is available, of course).
This would, for example, avoid errors like
gpsdrive: Depends: libboost-thread1.34.1 (>= 1.34.1-8)
but 1.34.1-4ubuntu3 is to be installed
You can find more information about debian packaging on
http://www.debian.org/devel/
http://www.debian.org/doc/developers-reference/
It might be a good idea to provide binary packages for both
debian and ubuntu. Since debootstrap is able to create ubuntu chroots
this can even be done on a debian system without too much hassle.
$ debootstrap hardy hardy
$ chroot hardy
[usual gpsdrive build process]
> > 'apt-get build-dep gpsdrive' installs all packages needed to build gpsdrive
> > btw.
>
> Just tried that and all it installed was the following:
>
> --------------------------------------------------------------
> chris123 at ubuntu:~/gpsdrive_build$ sudo apt-get build-dep gpsdrive
> [sudo] password for chris123:
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> The following NEW packages will be installed:
> debhelper html2text intltool-debian po-debconf
> ---------------------------------------------------------------
>
> Perhaps there is something I'm issing or not understanding?
apt-get build-dep should install all packages that are necessary to build
a package. You already have most of the build dependencies (eg
libmapnik-dev) installed on your system so it just pulled the few that
were still missing.
Unfortunately this does currently not help because of the wrong
dependencies of the binary package as explained above.
The best thing we could do is to join forces and no longer duplicate
work by creating different (and sometimes incompatible) gpsdrive
packages :)
This has some drawbacks, for example did Joerg create a package for the
world_boundaries that is not available in debian. But i think this could
easily be solved by providing a download script and document it in
README.Debian.
Regards,
Andreas
More information about the GPSdrive
mailing list