2013-04-18 18 views
7

TLDR: Posso utilizzare le librerie ATLAS/LAPACK statiche con NumPy & SciPy?NumPy e SciPy. Statico vs dinamica di carico

Background:

Dopo la costruzione di ATLAS con LAPACK con il seguente:

wget http://sourceforge.net/projects/math-atlas/files/Stable/3.10.1/atlas3.10.1.tar.bz2/download 
wget http://www.netlib.org/lapack/lapack-3.4.2.tgz 
tar -jxvf atlas3.10.1.tar.bz2 
mkdir BUILD 
cd BUILD 
../ATLAS/configure -b 64 -Fa alg -fPIC \ 
    --with-netlib-lapack-tarfile=../lapack-3.4.2.tgz \ 
    --prefix=<ATLAS_INSTALL_PATH> 
make 
cd lib 
make shared 
make ptshared 
cd .. 
make install 

ho ottenuto i seguenti file sotto BUILD/lib:

[email protected] 
Makefile 

.a file:

libatlas.a  
libcblas.a  
libf77blas.a  
libptf77blas.a 
libtstatlas.a 
liblapack.a  
libf77refblas.a 
libptlapack.a 
libptcblas.a  

.so file:

libsatlas.so* 
libtatlas.so* 

La mia prima domanda è, perché non ho .so (Dynamic Shared Library) file per lapack e cblas?

La mia seconda domanda è: quale dei due file seguenti utilizza NumPy?

libsatlas.so* 
libtatlas.so* 

Infine, se mi definisco:

BLAS=/path_to_BUILD/lib/libcblas.a 
LAPACK=/path_to_BUILD/lib/liblapack.a 
ATLAS=/path_to_BUILD/lib/libatlas.a 

e aggiungere /path_to_BUILD/lib-LD_LIBRARY_PATH e alla variabile library_dirs all'interno del file site.cfg in NumPy. NumPy e SciPy potrebbero usare le mie librerie? (anche se sono statici?).

risposta

2

Dovresti poterlo fare. Aggiungere

[DEFAULT] 
search_static_first = true 

al file site.cfg e si dovrebbe essere pronti per partire.