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

Re: blas wreckage ?



On 2019-01-07 11:53, Jörg-Volker Peetz wrote:
Hi,

running the appended little script on my system a lot of packages are found which contain libraries linked to libopenblas.so.0. But all these packages don't
declare a dependency on libopenblas-base.
This seems to me not o.k.

Since libblas.so.3 from package libopenblas-base itself is linked to
libopenblas.so.0, I guess the linking to libopenblas.so.0 is expendable.


There could be a handful of different things going on here. OpenBLAS is (arguably) the better open source BLAS, so some package explicitly Build-Depends: libopenblas-dev. That's part of the problem that we're striving to fix with the libblas-dev | libblas.so virtual package.

In some case the situation is a little subtle. The maintainer might know about the alternatives so specifies Build-Depends: libopenblas-dev | libatlas-base-dev | libblas-dev | libblas.so. Intuitively this seems sensible, "all for alternatives but prefer OpenBLAS if possible". But it doesn't work with the Debian buildds, which strictly select only the first alternative (so will FTBFS on an arch which doesn't provide openblas).

But the problem you described, linking to libopenblas.so.0 but not depending on the package, is simply a bug that needs to be fixed. It could happen if the maintainer hasn't specified Depends: ${shlibs:Depends} in control or doesn't run dh or dh_shlibdeps. dh_shlibdeps (or dpkg-shlibdeps) will determine that libopenblas.so.0 is represented by Depends: libblas3 | libblas.so.3. lintian would detect the problem. It indicates lazy packaging.

Drew


Reply to: