TLDR:我可以在NumPy&中使用静态ATLAS / LAPACK库吗? SciPy的?
背景
使用LAPACK构建ATLAS之后:
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
我在BUILD/lib
下面有以下文件:
Make.inc@
Makefile
.a
个文件:
libatlas.a
libcblas.a
libf77blas.a
libptf77blas.a
libtstatlas.a
liblapack.a
libf77refblas.a
libptlapack.a
libptcblas.a
.so
个文件:
libsatlas.so*
libtatlas.so*
我的第一个问题是,为什么我没有.so
和lapack
的{{1}}(共享动态库)文件?
我的第二个问题是,NumPy使用以下哪两个文件?
cblas
最后,如果我定义:
libsatlas.so*
libtatlas.so*
并将BLAS=/path_to_BUILD/lib/libcblas.a
LAPACK=/path_to_BUILD/lib/liblapack.a
ATLAS=/path_to_BUILD/lib/libatlas.a
添加到/path_to_BUILD/lib
以及NumPy中LD_LIBRARY_PATH
文件中的library_dirs
变量。 NumPy和SciPy会使用我的库吗? (即使它们是静态的?)。
答案 0 :(得分:2)
你应该能够。添加
[DEFAULT]
search_static_first = true
到你的site.cfg
文件,你应该好好去。