Bug#849593: libfftw3-single3: dependencies in shlibs file not tight enough (Was: Bug#849589: ardour: undefined symbol: fftwf_make_planner_thread_safe)

Ghislain Vaillant ghisvail at gmail.com
Fri Dec 30 17:17:28 UTC 2016


CC'd to d-science,

On Fri, 30 Dec 2016 01:24:07 +0000 James Cowgill <jcowgill at debian.org> 
wrote:
> Hi,
>
> On 30/12/16 00:50, Ghislain Vaillant wrote:
> > On Thu, 29 Dec 2016 00:30:58 +0000 James Cowgill <jcowgill at debian.org> wrote:
> >> Control: severity -1 serious
> >> Control: clone -1 -2
> >> Control: reassign -2 libfftw3-single3 3.3.5-1
> >> Control: block -1 by -2
> >> Control: retitle -2 libfftw3-single3: dependencies in shlibs file not tight enough
> >>
> >> Hi,
> >>
> >> On 29/12/16 00:02, Oleksandr Gavenko wrote:
> >>> Package: ardour
> >>> Version: 1:5.5.0~dfsg-1
> >>> Severity: important
> >>>
> >>> Application is being crashing constantly with:
> >>>
> >>> bash# ardour5
> >>> /usr/lib/ardour5/ardour-5.5.0: symbol lookup error: /usr/lib/ardour5/ardour-5.5.0: undefined symbol: fftwf_make_planner_thread_safe
> >> [...]
> >>> Versions of packages ardour depends on:
> >> [...]
> >>> ii  libfftw3-single3     3.3.4-2
> >
> > How come? Both testing and unstable have 3.3.5-1.
>
> I don't think that matters. Partial upgrades should work (and
> derivatives may rely on it).

Next time, it would be nice to explain upfront that the new version of 
ardour you are trying to build may *conditionally* use new features 
introduced by FFTW 3.5:

https://github.com/Ardour/ardour/search?utf8=%E2%9C%93&q=fftwf_make_planner_thread_safe&type=Code

> >> This package is the problem. The fftwf_make_planner_thread_safe
> >> function is only present in fftw3 3.3.5 (so upgrading your package
> >> would fix this). fftw3 should generate a stricter dependency so that
> >> this doesn't happen.
> >
> > libfftw3-dev depends on libfftw3_single3 (=${binary:Version}).
> >
> > How is that not strict enough?
>
> I'm talking about the dependency from ardour to libfftw3_single3. The
> dependency from libfftw3-dev doesn't matter here.

Maybe this could be *temporarily* fixed on ardour's end by requiring 
libfftw3-dev (>= 3.3.5) as a b-dep no?

> >> fftw3 maintainers: to fix this you either need to provide a symbols
> >> file, or pass a suitable -V option to dh_makeshlibs so the shlibs file
> >> contains a stricter dependency.
> >
> > Please be more explicit about the expected outcome (i.e. the stricter
> > dependency you keep mentioning).
>
> Please read policy 8.6 which describes most of this more fully.
>
> The goal is for dpkg-shlibdeps to generate a dependency like
> "libfftw3-single3 (>= 3.3.5)" for any package which uses
> fftwf_make_planner_thread_safe. This is needed otherwise you may get a
> linker error like ardour does, and it's is done by using the symbols or
> shlibs systems as described in policy 8.6.

I am personally not familiar with the symbols stuff, so it would be up 
to somewhat from the team or yourself to provide a patch for this issue.

Hope this helps,
Ghis



More information about the debian-science-maintainers mailing list