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

Re: voro++ package

Hi Ole,

Thanks for the pointers, I think that makes sense to me now. I updated the package to use executable .install files for libvoro++1 and voro++-dev, and to install the library files to /usr/lib/<arch>. However, I now cannot build the package. This is the end of the build log:

make[2]: Leaving directory '/build/voro++-0.4.6+dfsg1/src'
install -d -m 0755 /build/voro++-0.4.6+dfsg1/debian/tmp/usr/bin
install -d -m 0755 /build/voro++-0.4.6+dfsg1/debian/tmp/usr/lib
install -d -m 0755 /build/voro++-0.4.6+dfsg1/debian/tmp/usr/share/man
install -d -m 0755 /build/voro++-0.4.6+dfsg1/debian/tmp/usr/share/man/man1
install -d -m 0755 /build/voro++-0.4.6+dfsg1/debian/tmp/usr/share/doc/
install -d -m 0755 /build/voro++-0.4.6+dfsg1/debian/tmp/usr/share/doc/voro++
install -d -m 0755 /build/voro++-0.4.6+dfsg1/debian/tmp/usr/include
install -d -m 0755 /build/voro++-0.4.6+dfsg1/debian/tmp/usr/include/voro++
make[1]: Leaving directory '/build/voro++-0.4.6+dfsg1'
   debian/rules override_dh_install
make[1]: Entering directory '/build/voro++-0.4.6+dfsg1'
Can't exec "/build/voro++-0.4.6+dfsg1/debian/voro++-dev.install": No such file or directory at /usr/share/perl5/Debian/Debhelper/Dh_Lib.pm line 794.
dh_install: cannot run debian/voro++-dev.install: No such file or directory
debian/rules:14: recipe for target 'override_dh_install' failed
make[1]: *** [override_dh_install] Error 2
make[1]: Leaving directory '/build/voro++-0.4.6+dfsg1'
debian/rules:8: recipe for target 'binary' failed
make: *** [binary] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2

The file debian/voro++-dev.install definitely exists, so I don't know why this error message occurs. Any clues here as to what the problem is?


On 05/01/17 21:10, Ole Streicher wrote:
Hi Roger,

the links are already created when the library is built. The problem is
your "Makefile.patch" patch, specifically the lines

       $(INSTALL) $(IFLAGS) src/libvoro++.so  $(DESTDIR)$(PREFIX)/lib
       $(INSTALL) $(IFLAGS) src/libvoro++.so.1.0.0 $(DESTDIR)$(PREFIX)/lib

Specifically the first copies the library itself, and not the link. I
would not install them at all specify the target in debian/*.install:

src/libvoro++.so usr/lib    (for debian/voro++-dev.install)
src/libvoro++*.so.* usr/lib (for debian/libvoro++1.install)

This also makes it easier to fullfill another goal of Debian:
Multi-Arch. That means, that different architectures (f.e. 32 and 64
bit) may be installed together. This requires that the libraries do not
go to /usr/lib, but to /usr/lib/<arch>. You may check the wcstools
package for this:


Important is that the install files in that case should be executable.

If you do it this way, you don't need to specify the symlinks at all.



Roger Wesson <rw@nebulousresearch.org> writes:
Hi, I have just uploaded new packaging files for voro++ which should
address all the comments below.  The package builds, but there are
lintian warnings and errors that I don't know how to get rid of
because I do not know how to properly create the symlink that ldconfig
would create.  Whatever I try gives lintian errors or warnings.  Right
now there are binaries-have-file-conflict warnings, which I think is
because I'm creating the symlinks at the wrong time, and a
non-dev-pkg-with-shlib-symlink, which I am not sure if it matters or
not, because if there is no symlink I get an error.

So, can someone offer any assistance here and tell me where I'm going wrong?


On 10/11/16 20:45, Ole Streicher wrote:
Roger Wesson <rw@nebulousresearch.org> writes:
Great!  Then it's all ready to be reviewed.

OK, here are my comments:

* Change order in d/copyright: first the common entry (*), then the more

* Add VCS entries in d/control

* html/jquery.js has no source. Don't just overwrite the lintian tag for this.
  Since the html subdir is not used anyway, I would recommend removing it
  from the tarball completely:
   - "Files-Excluded:" entry in the d/copyright header.
   - add "opts=dversionmangle=s/\+dfsg\d*//,repacksuffix=+dfsg" to debian/watch
   - if a doc is useful, create it yourself with doxygen

* provide some description to the patches in debian/patches

* install the NEWS file as changelog (with dh_installchangelogs)

* install the examples (with dh_installexamples)

* please clarify with upstream whether a shared library would be
  useful here, and if yes, povide one. In that case the package should
  be split into one package for the lib, one for the -dev tools and
  one for the utility. See Debian Policy 8.3

* Lintian warns about
   manpage-has-errors-from-man usr/share/man/man1/voro++.1.gz 85:
   warning: numeric expression expected (got `s')
  Since you are already patching the manpage, maybe you can fix that?

* I added voronoi to the debian-astro blend, however it may be worth to
  add it to the "mathematics" task of debian science as well. If you
  want that, you should clone the debian-science blends package
  and add your package in tasks/mathematics (resp. mathematics-dev for
  the debelopment package).

Best regards


Reply to: