From: Johan Hattne <johan.hattne@Domain.Removed>
Date: January 25, 2011 2:26:03 PM EST
To: julie langou <julie@Domain.Removed>
Subject: Re: [Lapack] CBLAS test suite fails on Mac OS X
On 01/25/11 12:37, julie langou wrote:
Thank you for reporting the problem.
Could you elaborate a little more on "had problems to behave".? Do you
have problem running the testing suite? your own program?
Thanks a lot for your quick reply!
Basically "had problems to behave" means "I can't run the test suite".
This is right after compiling the CBLAS, and then attempting to run the
programs in the "testing" directory.
Actually, "can't run the test suite" isn't quite accurate: I can run it,
but it will exit prematurely. This is because the test suite tests
whether the routines handle invalid arguments, upon which the routines
are supposed to call xerbla and exit. Since the Netlib's CBLAS is just
a wrapper around the Fortran BLAS, all that is done in libblas not
libcblas. In order to prevent the exit from happening and allow moving
on to testing the next routine, the test suite tries to trick the linker
to use its own xerbla instead of the one from libblas. It's the
linker-trickery that I can't get to work.
The reason for supplying the patch was that I felt it unnecessary to
play the linker game, even if darwin could eventually be shoehorned into
playing nice with the test suite. To me, running the individual
programs in a process of their own seemed like what was supposed to be
done. If they fail and exit, the parent can record the exit status and
if they succeed and don't the wrapper will do the exit for them--now
with an exit status indicating success.
CBLAS has been updated this week, nothing major, just adding some
folders and modifying Makefile.
I am working on Mac OS X and I got no problem so far.
I don't *really* have any problems--I'm now convinced that my libcblas
is fine. It's just that the test suite that shipped with the package
failed to convince me.
Here is my Makefile.in
My blaslib is Reference BLAS from the netlib LAPACK package compiled with
FORTRAN = gfortran -fimplicit-none -g
DRVOPTS = $(OPTS)
NOOPT = -g -O0
LOADER = gfortran -g
In this case I, too, was using the reference BLAS from netlib. My
compilation options are slightly different (in fact, I didn't use any
options at all, but linked with -dead_strip_dylibs), but that shouldn't
really matter here. No LAPACK is involved on my part.
// Best wishes; Johan
Postdoctoral Researcher @ Otwinowski Lab
UT Southwestern Medical Center * 5323 Harry Hines Blvd. * Dallas
TX 75390-8816 * +1-(214)-645-6378 * http://bones.swmed.edu