为什么在我尝试通过pip进行SciPy安装时,在RHEL上未检测到ATLAS?

我正在使用RHEL6,Python 2.6.6,并尝试通过pip安装SciPy。

[user@server ~]$ sudo pip install scipy <snip> atlas_blas_threads_info: Setting PTATLAS=ATLAS libraries ptf77blas,ptcblas,atlas not found in ['/usr/local/lib64', '/usr/local/lib', '/usr/lib64/atlas'] NOT AVAILABLE <snip> 

但是,当我列出/ usr / lib64 / atlas中的文件时:

 [user@server ~]$ ls /usr/lib64/atlas libcblas.so.3 libclapack.so.3.0 liblapack.so.3 libptcblas.so.3.0 libatlas.so.3 libcblas.so.3.0 libf77blas.so.3 liblapack.so.3.0 libptf77blas.so.3 libatlas.so.3.0 libclapack.so.3 libf77blas.so.3.0 libptcblas.so.3 libptf77blas.so.3.0 

有任何想法吗?

Numpy和Scipy是怪兽。 最大的烦恼是Fortran ABI不匹配等等。 从安装页面 :

如果你的blas / lapack / atlas是用g77编译的,那么在build立numpy和scipy时必须使用g77;

如果你的地图集是用gfortran构build的,你必须用gfortran构buildnumpy / scipy。

在你拥有的Atlas版本上运行ldd

如果libg2c.so是依赖项,则使用g77,并在构build时需要传递这些选项:

 python setup.py build --fcompiler=gnu 

或者,如果libgfortran.so是一个依赖项,它是用gfortran编译的,你需要设置适当的fortran编译器:

 python setup.py build --fcompiler=gnu95 

作为一个侧面说明,如果你的机器运行的处理器包括SIMD支持,我强烈build议安装图集的优化版本(例如atlas3-sse)。