Python下大多數(shù)工具包的安裝都很簡(jiǎn)單,只需要執(zhí)行 “python setup.py install”命令即可。然而,由于SciPy和numpy這兩個(gè)科學(xué)計(jì)算包的依賴關(guān)系較多,安裝過(guò)程較為復(fù)雜。網(wǎng)上教程較為混亂,而且照著做基本都不能用。在仔細(xì)研讀各個(gè)包里的README和INSTALL之后,終于安裝成功?,F(xiàn)記錄如下。 系統(tǒng)環(huán)境: OS:RedHat5 Python版本:Python2.7.3 gcc版本:4.1.2 各個(gè)安裝包版本: scipy-0.11.0 numpy-1.6.2 nose-1.2.1 lapack-3.4.2 atlas-3.10.0 依賴關(guān)系:scipy的安裝需要依賴于numpy、lapack、atlas(后兩者都是線性代數(shù)工具包,不清楚的自行g(shù)oogle之。。。),而numpy和sci的測(cè)試程序的運(yùn)行又依賴于nose,因此,整個(gè)安裝過(guò)程必須要按順序執(zhí)行的,否則是無(wú)法執(zhí)行下去的。 安裝步驟: 1、安裝nose 這個(gè)安裝比較簡(jiǎn)單,解壓縮nose的安裝文件,進(jìn)入nose的目錄,直接運(yùn)行setup.py即可: tar -zxvf nose-1.2.1.tar.gz cd nose-1.2.1 python setup.py install 2、安裝lapack 由于最新版本的ATLAS可以直接集成lapack的安裝壓縮文件進(jìn)行編譯,因此,如果僅在python下使用的話,可以不用安裝lapack。只需要下載壓縮文件:lapack-3.4.2.tgz 即可。 3、安裝ATLAS 這個(gè)的安裝主要是配置一些選項(xiàng),包括配置成64位庫(kù)文件、位置無(wú)關(guān)的以及共享的鏈接庫(kù)。詳細(xì)的配置說(shuō)明在atlas安裝包 doc/ 下的pdf文件中。可查閱。 下面是我的安裝過(guò)程: 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 (注:這個(gè)配置時(shí)間非常長(zhǎng),在Core i7 處理上,大概1個(gè)小時(shí)左右) make (下面是一些檢查過(guò)程,保證沒(méi)有問(wèn)題之后再進(jìn)行安裝) make check make time make install 至此,atlas安裝完成。不過(guò)我們要記錄下編譯過(guò)程中所用的fortran編譯器類型,這個(gè)信息在下面安裝numpy和scipy的時(shí)候要用。還是在目錄 obj64/ 下,執(zhí)行 fgrep "F77 ="
Make.inc 4、安裝numpy numpy和scipy的安裝過(guò)程都要顯式的指明所用fortran編譯器的類型,而且要與前面編譯atlas時(shí)一致(在本文中即:gfortran),這一點(diǎn)非常重要,否則很多功能都會(huì)出錯(cuò)。 首先配置numpy目錄下的site.cfg文件,指明atlas庫(kù)的位置: tar -zxvf numpy-1.6.2.tar.gz cd numpy-1.6.2 cp site.cfg.example site.cfg vim site.cfg 配置成如下格式: [DEFAULT] [blas_opt] [lapack_opt] [amd] 接下來(lái)配置安裝numpy所需要的Fortran編譯器類型: 如果前面得到的Fortran編譯器是gfortran的話,執(zhí)行: 如果前面得到的Fortran編譯器是g77的話,執(zhí)行: 然后執(zhí)行 python setup.py install 安裝完成 5、安裝scipy 與安裝numpy類似: tar -zxvf scipy-0.11.0.tar.gz cd scipy-0.11.0 vim site.cfg 配置成如下格式: [DEFAULT] [blas_opt] [lapack_opt] [amd] 接下來(lái)配置安裝numpy所需要的Fortran編譯器類型: 如果前面得到的Fortran編譯器是gfortran的話,執(zhí)行: 如果前面得到的Fortran編譯器是g77的話,執(zhí)行: 然后執(zhí)行 python setup.py install 安裝完成 然后可以在python下執(zhí)行相應(yīng)的測(cè)試程序: python >>> import nose >>> import numpy >>> import scipy >>> numpy.test('full') 等待。。。。 >>> scipy.test('full') 到這里,整個(gè)安裝過(guò)程結(jié)束。 |
|