On Mon, 30 Sep 2013 10:03:14 +0300
Susi Lehtola <jussilehtola(a)fedoraproject.org> wrote:
On Sun, 29 Sep 2013 23:57:21 +0200
Kevin Kofler <kevin.kofler(a)chello.at> wrote:
> Susi Lehtola wrote:
>
> > On Sun, 29 Sep 2013 01:04:31 +0200
> > Kevin Kofler <kevin.kofler(a)chello.at> wrote:
> >> Susi Lehtola wrote:
> >> > If you link to -lblas, you're shooting yourself in the leg in the
first
> >> > place, since that's the reference implementation on current
Fedoras.
> >>
> >> In fact, I noticed that, and that's a serious packaging bug.
> >>
> >> If a package links -lblas -llapack, if ATLAS is installed, it'll get
> >> reference BLAS and ATLAS LAPACK! If it links -llapack -lblas, it'll
> >> probably get the ATLAS functions throughout, because then libatlas is
> >> resolved first. That's very unexpected and broken behavior.
> >
> > No, you're assuming nonstandard behavior. ATLAS has never done this.
>
> I am describing the behavior that actually happens with the Fedora 18 (and I
> presume 19 too) atlas-sse2 package!
>
> Try running ldd on LAPACK-using stuff, you'll see how the ATLAS liblapack is
> picked up (but libblas is not overridden, which is a bug).
Yes, but everyone knows that if you want ATLAS, the link command is
-L%{_libdir} -llapack -lf77blas -latlas
If you link to -lblas you're assuming nonstandard behavior. Fedora is
not Debian.
Nowadays this is just
-L%{_libdir} -lsatlas
a much easier version.
.. and this is also the main reason why I think that the new scheme is
loads better. At the linking phase you can be 100% sure of what library
you're using, and also that you're not going to run into problems with
incompatible libraries.
--
Susi Lehtola
Fedora Project Contributor
jussilehtola(a)fedoraproject.org