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

Re: gfortran transition: new lapack and blas questions

Hi Kevin!

"Kevin B. McCarty" <kmccarty@Princeton.EDU> writes:

> Hi all,
> I'm trying now to adjust Cernlib build dependencies for the new blas and
> lapack packages as the gfortran transition progresses.
> My understanding is this (leaving aside ATLAS for now to omit additional
> complications):
> 1) Build-dependencies, and dependencies of Cernlib -dev packages, should
> look like this:
> Depends: refblas3-dev (>= 1.2-9) | libblasgf-3.so
> Depends: lapack3-dev (>= 3.1.1-0.1) | liblapackgf-3.so

(BTW, the initial upload was in error here and will be fixed shortly,
the alternative should read libblas-3gf.so)

This is useful if you want to control the soname version against which
you link, i.e. it makes most sense if you have -lblas-3gf on your gcc
link command line.  In this case, you have to edit the control file
whenever the soname might change in the future.  I'd love your
comments on the note I just posted a few minutes ago.  If we take the
opportunity now to do refblas3-dev -> libblas-dev, then you would need
some version numbering here to, as this package in the future might
refer to an upgraded soname development environment.

If you do not care what soname you are linking aginst, build-dep on
libblas-dev (assuming we adopt this), and use -lblas on the link
command line.  Then as long as your library paths are conventional,
you get the latest with a constant control file.

BTW, I'm not sure if the linker is yet smart enough for this, but you
may need only to link against lapack, as that brings in blas
automatically through its own dynamic linking structure.

> 2) Packages that want to manually depend upon BLAS or LAPACK runtime
> libraries (not devel files) without using shlibs should have deps like this:
> Depends: refblas3gf | libblasgf.so.3
> Depends: lapack3gf | liblapackgf.so.3
> Can someone please verify that these are the correct forms?

This should be filled in authmatically for you via shlibdeps.

> In particular, I just downloaded the refblas3gf 1.2-9 .deb and saw that
> it Provides: libblasgf.so.3.  But at
> http://lists.debian.org/debian-toolchain/2007/10/msg00024.html ,
> Matthias mentioned that the shlibs for refblas3gf look like this:
> >     atlas3gf-base | refblas3gf | libblas.so.3gf
> [Note that here the gf is after the .so.3, but in the Provides line I
> mentioned before, the gf is before the .so.3]  Is this a mistake in
> typing, or is the shlibs line in fact actually mis-matched to the
> Provides?  If the latter, I guess it needs to be fixed...

Yes, thanks.  Will try to upload something today.  Please do allow a
few days for comments/complaints/revisions ...

Take care,

> And the question is open as to whether the lapack Provides/shlibs ended
> up being liblapackgf.so.3 or liblapack.so.3gf ... ?  (Guess I could wait
> until it gets through NEW and find out on my own...)
> best regards,
> -- 
> Kevin B. McCarty <kmccarty@princeton.edu>   Physics Department
> WWW: http://www.princeton.edu/~kmccarty/    Princeton University
> GPG: public key ID 4F83C751                 Princeton, NJ 08544

Camm Maguire			     			camm@enhanced.com
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah

Reply to: