Hi Sébastien,

>  However, MKL is non-free software, and in particular its source code is not
>  publicly available. By using MKL as the default BLAS/LAPACK implementation,
>  you might be violating the licensing terms of copyleft software that would
>  become dynamically linked against it. Please verify that the licensing terms
>  of the program(s) that you intend to use with MKL are compatible with the MKL
>  licensing terms. For the case of software under the GNU General Public
>  License, you may want to read this FAQ:
>   https://www.gnu.org/licenses/gpl-faq.html#GPLIncompatibleLibs

Thank you for the debconf patch. Applied.

> My assumption has been that, if someone links with -lblas, then he is
> only
> asking for the BLAS ABI and not more. If someone wants to link
> against symbols
> specific to ATLAS/OpenBLAS, then he should link against -latlas/-
> lopenblas.
> 
> So, for consistency, I think it is ok to register MKL as providing
> libblas.so/liblapack.so.

Both libblas.so and liblapack.so are provided by libmkl-dev now [1].
Note that the cblas.h slave points to mkl_cblas.h instead of mkl.h,
such that problematic usage won't success. This is working.

> 
> Using LD_LIBRARY_PATH is indeed the easiest way to switch between
> BLAS
> implementations on a per-user basis (since each one of them has a
> specific
> subdir under /usr/lib/${DEB_HOST_MULTIARCH}/). So the same should
> probably be
> done for MKL.

Four symbol links are installed to usr/lib/${DEB_HOST_MULTIARCH}/mkl/
directory, see [2][3]. Using ld.so environt variable to switch
blas/lapack is documented in README.Debian [4].

By the way, the document should be enough to convey important usages
and information, just like what the table of content shows

Table of Contents

  -- User Part --

  (*) How to install these MKL Debian packages?
  (*) How do I link against MKL?
  (*) Environment variables for MKL
  (*) MKL performance tips from maintainer
  (*) Switching BLAS/LAPACK by environment variable and alternatives mechanism
  (*) Building your custom library from MKL with selected symbols
  (*) Where is MKL documentation and examples?
  (*) Upstream's XXX is missing, where is it?

  -- Debian Developer Part --

  (*) How do I understand the upstream MKL source directory structure?
  (*) How to get the upstream source tarball?
  (*) What? MKL is redistributable?

I just overhauled the package. The core file control.py was
polished so that it is easy to read and modify.
Checked all the upstream files for copyright.
It's time to RFS :-)

[1] 
https://salsa.debian.org/science-team/intel-mkl/blob/master/debian/libmkl-dev.postinst.in
[2] 
https://salsa.debian.org/science-team/intel-mkl/blob/master/debian/libmkl-rt.links
[3] 
https://salsa.debian.org/science-team/intel-mkl/blob/master/debian/libmkl-dev.links
[4] 
https://salsa.debian.org/science-team/intel-mkl/raw/master/debian/README.Debian

Reply via email to