注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

云之南

风声,雨声,读书声,声声入耳;家事,国事,天下事,事事关心

 
 
 

日志

 
 
关于我

专业背景:计算机科学 研究方向与兴趣: JavaEE-Web软件开发, 生物信息学, 数据挖掘与机器学习, 智能信息系统 目前工作: 基因组, 转录组, NGS高通量数据分析, 生物数据挖掘, 植物系统发育和比较进化基因组学

网易考拉推荐

Numpy与Scipy的安装  

2011-07-06 16:36:30|  分类: linux&shell |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |


http://www.scipy.org/Installing_SciPy/Linux

http://docs.scipy.org/doc/numpy/user/install.html#how-to-check-the-abi-of-blas-lapack-atlas

http://www.cnblogs.com/LeftNotEasy/archive/2011/05/29/2062324.html

 

http://blog.sciencenet.cn/blog-100989-665921.html

http://blog.sina.com.cn/s/blog_62dfdc740101aoo6.html

1,安装python2.6.5
2,安装nose
3,安装LAPACK(不安装也可)
4,ATLAS,(这一步要安装LAPACK 通过参数 --with-netlib-lapack-tarfile=/home/SCE/zhaolei/lapack-3.2.2.tgz 注意编译路径下面的 .so 可能要自己复制到ATLAS安装的目录下面。
5,装numpy,下载,解压
python setup.py build --fcompiler=gnu95
python setup.py install

注意:在安装numpy时,一定要把 配置的 BLAS,LAPACK,ATLAS环境变量删除,然后再安装,不然就会出错。
5,测试numpy
    import numpy
    numpy.test()
6. 最后安装Scipy
安装Scipy 下载,解压
安装好ATLAS的基础上,配置环境变量:因为我的ATLAS是安装在 ~/local/目录下面的

export BLAS=$HOME/local/lib
export LAPACK=
$HOME/local/lib
export ATLAS=
$HOME/local/lib

python setup.py build --fcompiler=gnu95
python setup.py install

注意:有时可能会出现编译器冲突问题。

http://docs.scipy.org/doc/numpy/user/install.html#how-to-check-the-abi-of-blas-lapack-atlas


The two most popular open source fortran compilers are g77 and gfortran. Unfortunately, they are not ABI compatible, which means that concretely you should avoid mixing libraries built with one with another. In particular, if your blas/lapack/atlas is built with g77, you must use g77 when building numpy and scipy; on the contrary, if your atlas is built with gfortran, you must build numpy/scipy with gfortran. This applies for most other cases where different FORTRAN compilers might have been used.

总结一下我出错误的原因:
1. 编译器的原因,服务器默认的编译器 是pgf77
2.另外,在测试scipy时,ImportError: /home/SCE/zhaolei/ATLAS/lib/liblapack.so: cannot open shared object file: No such file or directory
出现这样的错误。那只好,建个目录 ATLAS
>cd ATLAS
>ln -s ~/local/lib ./

   把/home/SCE/zhaolei/ATLAS/lib的包 链接到 /home/SCE/zhaolei/local/lib 库下面
   建立了ATLAS目录,之下有个链接指向你的local下的库目录

 3.我换成 gnu95 以后,和我以前 环境变量设置有冲突(动态库设置)

export HOME=/home/SCE/zhaolei

export PATH=$HOME/local/bin:$PATH
export LD_LIBRARY_PATH=$HOME/local/lib:$HOME/local/BerkeleyDB.4.5/lib:$LD_LIBRARY_PATH

export LIBRARY_PATH=$HOME/local/lib:$HOME/local/BerkeleyDB.4.5/lib:$LIBRARY_PATH
export LD_RUN_PATH=$LD_LIBRARY_PATH

export INCLUDE=$HOME/local/include:$INCLUDE

所以安装时,只好先注释掉了。

或者下面的变量一般不用设置:
#export LDFLAGS="-L$HOME/local/lib -L$HOME/local/BerkeleyDB.4.5/lib"
#export CPPFLAGS="-I$HOME/local/include -I$HOME/local/BerkeleyDB.4.5/include"
#export CXXFLAGS=$CPPFLAGS
#export CFLAGS=$CPPFLAGS



Python下科学计算包numpy和SciPy的安装【原创】

Python下大多数工具包的安装都很简单,只需要执行 “python setup.py install”命令即可。然而,由于SciPy和numpy这两个科学计算包的依赖关系较多,安装过程较为复杂。网上教程较为混乱,而且照着做基本都不能用。在仔细研读各个包里的README和INSTALL之后,终于安装成功。现记录如下。

 

系统环境:

OS:RedHat5

Python版本:Python2.7.3

gcc版本:4.1.2

 

各个安装包版本:

scipy-0.11.0

numpy-1.6.2

nose-1.2.1

lapack-3.4.2

atlas-3.10.0

 

依赖关系:scipy的安装需要依赖于numpy、lapack、atlas(后两者都是线性代数工具包,不清楚的自行google之。。。),而numpy和sci的测试程序的运行又依赖于nose,因此,整个安装过程必须要按顺序执行的,否则是无法执行下去的。

 

安装步骤:

1、安装nose

这个安装比较简单,解压缩nose的安装文件,进入nose的目录,直接运行setup.py即可:

tar -zxvf nose-1.2.1.tar.gz

cd nose-1.2.1

python setup.py install

 

2、安装lapack

由于最新版本的ATLAS可以直接集成lapack的安装压缩文件进行编译,因此,如果仅在python下使用的话,可以不用安装lapack。只需要下载压缩文件:lapack-3.4.2.tgz 即可。

 

3、安装ATLAS

这个的安装主要是配置一些选项,包括配置成64位库文件、位置无关的以及共享的链接库。详细的配置说明在atlas安装包 doc/ 下的pdf文件中。可查阅。

下面是我的安装过程:

tar -jxvf atlas3.10.0.tar.bz2

cd ATLAS

mkdir obj64

../configure -b 64 -Fa alg -fPIC -shared --prefix=/配置atlas的安装路径/atlas --with-netlib-lapack-tarfile=/lapack安装压缩文件存放的目录/lapack-3.4.2.tgz

(注:这个配置时间非常长,在Core i7 处理上,大概1个小时左右)

make

(下面是一些检查过程,保证没有问题之后再进行安装)

make check

make time

make install

至此,atlas安装完成。不过我们要记录下编译过程中所用的fortran编译器类型,这个信息在下面安装numpy和scipy的时候要用。还是在目录 obj64/ 下,执行

fgrep "F77 =" Make.inc
可以看到  F77 = gfortran
记下这个编译器类型 gfortran.

 

4、安装numpy

numpy和scipy的安装过程都要显式的指明所用fortran编译器的类型,而且要与前面编译atlas时一致(在本文中即:gfortran),这一点非常重要,否则很多功能都会出错。

首先配置numpy目录下的site.cfg文件,指明atlas库的位置:

tar -zxvf numpy-1.6.2.tar.gz

cd numpy-1.6.2

cp site.cfg.example site.cfg

vim site.cfg

配置成如下格式:

[DEFAULT]
library_dirs = /usr/local/lib:/atlas的安装目录/atlas/lib
include_dirs = /usr/local/include:/atlas的安装目录/include

[blas_opt]
libraries = f77blas, cblas, atlas

[lapack_opt]
libraries = lapack, f77blas, cblas, atlas

[amd]
amd_libs = amd
[umfpack]
umfpack_libs = umfpack

 

接下来配置安装numpy所需要的Fortran编译器类型:

如果前面得到的Fortran编译器是gfortran的话,执行:

 python setup.py build --fcompiler=gnu95

如果前面得到的Fortran编译器是g77的话,执行:

 python setup.py build --fcompiler=gnu

 

然后执行

python setup.py install

安装完成

 

5、安装scipy

与安装numpy类似:

tar -zxvf scipy-0.11.0.tar.gz

cd scipy-0.11.0

vim site.cfg

配置成如下格式:

[DEFAULT]
library_dirs = /usr/local/lib:/atlas的安装目录/atlas/lib
include_dirs = /usr/local/include:/atlas的安装目录/include

[blas_opt]
libraries = f77blas, cblas, atlas

[lapack_opt]
libraries = lapack, f77blas, cblas, atlas

[amd]
amd_libs = amd
[umfpack]
umfpack_libs = umfpack

 

接下来配置安装numpy所需要的Fortran编译器类型:

如果前面得到的Fortran编译器是gfortran的话,执行:

 python setup.py build --fcompiler=gnu95

如果前面得到的Fortran编译器是g77的话,执行:

 python setup.py build --fcompiler=gnu

 

然后执行

python setup.py install

安装完成

 

然后可以在python下执行相应的测试程序:

python

>>> import nose

>>> import numpy

>>> import scipy

>>> numpy.test('full')

等待。。。。

>>> scipy.test('full')

 

到这里,整个安装过程结束。

  评论这张
 
阅读(2678)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016