[Debian-med-packaging] [Pkg-d-devel] Libbiod and libundead packaged but sambamba does not build (Was: Next D project question: sambamba needs rdmd)

Matthias Klumpp mak at debian.org
Sun Apr 30 16:12:29 UTC 2017


2017-04-30 15:28 GMT+02:00 Matthias Klumpp <mak at debian.org>:
> 2017-04-30 12:44 GMT+02:00 Andreas Tille <andreas at an3as.eu>:
>> Hi again,
>>
>> any hint how to cope with this?
>
> I played around with the makefile, and while you can easily get around
> using ldmd, doing that and making Sambambe use Debian-packaged
> libraries is a real pain - frankly the easiest way to do it would be
> to almost completely rewrite the shipped Makefile.
> And if that's the solution, I can also write much fewer lines and add
> a Meson build file for it.
>
> I'll make a patch and see if that works okay.

I now committed a couple of changes to the sambamba packaging repo,
which will make the thing build - in theory.
To actually make the build process work, this patch needs to be
applied to htslib:
 https://github.com/UMCUGenetics/guix-additions/blob/master/htslib-add-cram_to_bam.patch

Then the build finishes and we get a binary, which doesn't launch:

Fatal Error while loading '/usr/lib/x86_64-linux-gnu/libbiod.so.0':
        The module 'undead.stream' is already defined in './sambamba'.

This probably is an LDC bug, it looks like it doesn't like the undeaD
static library being compiled into both the executable and shared lib.
The issue could probably be worked around by making the undead library
a shared library instead, that way, both BLOBs would be forced to use
the same code copy.
(in order to make undead a shared library, change the "shared_library"
instruction in its meson.build file to just "library", and recompile
BioD with the new package).

I am not 100% sure that this is an actual LDC bug, but it likely makes
sense to ask the developers. In any case, it highlights that we need
to find a proper way to deal with D ABI in the Debian archive.

Cheers,
    Matthias


>> On Sun, Apr 16, 2017 at 02:51:42PM +0200, Andreas Tille wrote:
>>> Hi D packaging team,
>>>
>>> now libbiod and libundead are in Debian but my current packaging
>>> attempt[1] does not work yet.
>>>
>>> I have attached the build log and hope you can make some sense out of
>>> it and can give some hints to finalise the package.
>>>
>>> Thanks for any help
>>>
>>>        Andreas.
>>>
>>> On Sat, Mar 04, 2017 at 07:23:08PM +0100, Andreas Tille wrote:
>>> > Hi,
>>> >
>>> > I have commited some preliminary packaging for sambamba[1].  The build
>>> > fails with:
>>> >
>>> > rdmd --force --build-only --compiler=dmd -IBioD -g -d -L-l:lhts -L-l:libphobos2.a -L-l:llz4 -ofbuild/sambamba main.d
>>> > make[1]: rdmd: Command not found
>>> >
>>> > But Debian has no rdmd.  Is there anything I can use instead?
>>> >
>>> > Thanks for any help
>>> >
>>> >      Andreas.
>>> >
>>> > [1] https://anonscm.debian.org/git/debian-med/sambamba.git
>>> >
>>> > --
>>> > http://fam-tille.de
>>>
>>> --
>>> http://fam-tille.de
>>
>>
>>
>> --
>> http://fam-tille.de
>>
>> _______________________________________________
>> Pkg-d-devel mailing list
>> Pkg-d-devel at lists.alioth.debian.org
>> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-d-devel
>
>
>
> --
> I welcome VSRE emails. See http://vsre.info/



-- 
I welcome VSRE emails. See http://vsre.info/



More information about the Debian-med-packaging mailing list