[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
Wed May 17 22:39:37 UTC 2017


Hmm, I just tested this in a pristine sid chroot (using pbuilder) and
the compilation went just fine.
What are you doing to trigger this?


2017-05-17 12:53 GMT+02:00 Matthias Klumpp <mak at debian.org>:
> 2017-05-13 23:34 GMT+02:00 Andreas Tille <tille at debian.org>:
>> Hi,
>>
>> I wonder whether I made something wrong with htslib since I can not
>> confirm that the suggested change would help.
>
> I saw that cargs error once, the culprit was an issue with the
> pkg-config file of htslib (finding it properly). I forgot how I solved
> this though, it was one of these issues where you think little about.
> I can try building this again when home, weird that you get this issue
> while I didn't.
> To debug, use the pkg-config command to query cflags for htslib manually.
>
> Cheers,
>     Matthias
>
>> On Thu, May 04, 2017 at 11:14:58AM +0200, Andreas Tille wrote:
>>> Hi Matthias,
>>>
>>> thanks a lot for your commitment to this package.  Its really
>>> appreciated since I'd otherwise would be totally clueless.
>>>
>>> On Sun, Apr 30, 2017 at 06:12:29PM +0200, Matthias Klumpp wrote:
>>> > > 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.
>>>
>>> Thanks again.
>>>
>>> > 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
>>>
>>> I commited this patch to htslib git and build locally (even if
>>> distribution is set to experimental I did not uploaded yet).
>>>
>>> > Then the build finishes
>>>
>>> Hmmm, not at my side.  Despite I have changed
>>>
>>> sambamba(master) $ git diff
>>> diff --git a/debian/control b/debian/control
>>> index 7058e73..0d7a65e 100644
>>> --- a/debian/control
>>> +++ b/debian/control
>>> @@ -6,7 +6,7 @@ Uploaders: Andreas Tille <tille at debian.org>
>>>  Build-Depends: debhelper (>= 10),
>>>                 ldc,
>>>                 libbiod-dev,
>>> -               libhts-dev,
>>> +               libhts-dev (>= 1.4-3),
>>>                 liblz4-dev,
>>>                 libundead-dev,
>>>                 meson (>= 0.40),
>>>
>>>
>>> when trying to build sambamba in pbuilder I get
>>>
>>> ...
>>> Writing extended state information...
>>> Get: 1 file:/var/cache/pbuilder/extra/release ./ libhts2 1.4-3 [294 kB]
>>> Get: 2 file:/var/cache/pbuilder/extra/release ./ libhts-dev 1.4-3 [397 kB]
>>> ...
>>>
>>>    debian/rules override_dh_auto_configure
>>> make[1]: Entering directory '/build/sambamba-0.6.6'
>>> mkdir build
>>> (cd build && meson --prefix=/usr --buildtype=plain ..)
>>> The Meson build system
>>> Version: 0.40.0
>>> Source dir: /build/sambamba-0.6.6
>>> Build dir: /build/sambamba-0.6.6/build
>>> Build type: native build
>>> Project name: Sambamba
>>> Native d compiler: ldc2 (llvm 1.1.1)
>>> Appending DFLAGS from environment: '-O3 -g -release'
>>> Appending LDFLAGS from environment: '-Wl,-z,relro'
>>> Build machine cpu family: x86_64
>>> Build machine cpu: x86_64
>>> Found pkg-config: /usr/bin/pkg-config (0.29)
>>> Native dependency undead found: YES 1.0.6
>>> Native dependency biod found: YES 0.1.0
>>> Native dependency liblz4 found: YES 131
>>>
>>> Meson encountered an error in file meson.build, line 80, column 0:
>>> Could not generate cargs for htslib:
>>>
>>>
>>> debian/rules:26: recipe for target 'override_dh_auto_configure' failed
>>>
>>>
>>>
>>> Is there any chance that you did not commited the last state of your
>>> meson file?
>>>
>>>
>>> > 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 can perfectly do so but in any case feel free to commit those helpful
>>> changes to Git if you have done those changes locally anyway.
>>>
>>> I'd happily try the latter once the first issue is settled.
>>>
>>> Thanks a lot again for your very great help
>>>
>>>         Andreas.
>>>
>>> --
>>> http://fam-tille.de
>>>
>>> _______________________________________________
>>> Debian-med-packaging mailing list
>>> Debian-med-packaging at lists.alioth.debian.org
>>> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/debian-med-packaging
>>>
>>
>> --
>> http://fam-tille.de
>
>
>
> --
> 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