On Sunday, December 23, 2012 3:41:10 PM UTC, Snark wrote:
>
> Nothing forces you to change the blas from compile-time to run-time


But we want 

A) compile and link to BLAS (from 3rd party packages and from our own 
Python extension classes).
B) run Sage with a fast BLAS which will require extra linker arguments if 
you compile-time link against it.

How is our setup.py and 3rd party spkgs going to know about which libraries 
to link to (at compile time) in order to get BLAS?

One could have a script that spits out the linker options for the 
currently-active BLAS. Of course then everything will, for example, pick up 
dependencies to pthreads and libatlas if that was the active BLAS back when 
it was compiled. And break if you decide to delete the atlas install. 

Also, changing the BLAS that way still requires write access to 
SAGE_LOCAL/lib since the linker has (or should have) hardcoded the RPATH in 
the binary. One could LD_PRELOAD the chosen BLAS, but I think we should try 
to get away from LD_PRELOAD/LD_LIBRARY_PATH hacks and not cement them in.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
Visit this group at http://groups.google.com/group/sage-devel?hl=en.


Reply via email to