zoukankan      html  css  js  c++  java
  • Numpy 以及 Scipy 安装

    1,安装软件途中需要安装这俩,首先升级下python到2.7 or newer

    从python官网下载相应的source package,

    $tar -xJf Python-2.7.xz

    $cd Python-2.7

    $./configure --prefix=$HOME/python-2.7/ --enable-shared

    #这里安装在自己的工作目录下, 避免影响其他人;而后者的shared的选项,我记得是默认打开的;

    $make; make install

    #不需要root previlidge就可以安装了

    2,阿西吧, nose

    安装了python2.7,编译时发现缺少nose,继续安装之:

    $tar -xzf  nose-1.3.4.tar.gz

    $cd node-1.3.4

    使用刚才安装的python来运行setup.py

    $~/python2.7/bin/python2.7  setup.py install 

    3,机器上啥都没有,还要继续安装lapack

    现在lapack最新版本,3.5.0,在我所处的网络环境中,下载极其令人发指的缓慢,还多次自动断了。。。。发现百度云盘有个离线下载,不错,刷刷的下完。

    这个真不是广告,留念。。。好用,留念。

    $tar -xzf lapack-3.5.0.tar.gz

    $cd lapack-3.5.0

    $cp make.inc.example make.inc

    $vim make.inc

    第一次安装,修该make.in

    FORTRAN = gfortran
    OPTS = -O2 -frecursive
    DRVOPTS = $(OPTS)
    NOOPT = -O0 -frecursive
    LOADER = gfortran

    这里我选用gfortran,这货已经兼容f77和f95,省心。

    $vim Makefile

    all: lapack_install lib blas_testing lapack_testing

    #lib: lapacklib tmglib
    lib: blaslib variants lapacklib tmglib

    需要lib中的那几个静态库的生成

    $make

    $sudo cp *.a /usr/local/lib

    $sudo cp lapacke/include/*.h /usr/local/include

    4,阿西~~需要安装atlas库

    下载源码包,解压,

    $tar -xzf atlas-xx.tar.gz

    $cd ATLAS

    $mkdir build;  cd build

    $../configure -b 64 -Fa alg -fPIC --shared --with-netlib-lapack-tarfile=/home/User_name/lapack-3.5.0.tgz --prefix=/home/User_name/atlas

    $make

    这个时间,如很多人所言,非常的长,可以洗个澡睡个觉再发个呆,估计也没结束。。我是下午五点开始编译次日清晨来打扫现场,额,完毕了

    (但是也未必,后来在其他的机器上编译时,时间正常。。。)

    $make check

    $make time

    $make install

    由于之前指定了安装路径在个人的/home 之下,所以就不需要root previlege

    哦,对了,当前仍在build/ 目录下,作:

    $fgrep "F77 = " Make.inc

    我的结果是: F77 = /usr/bin/gfortran

    后面编译时,尽量保持这个编译器的一致性,避免不必要的麻烦。。

    5,安装Suite_Sparse库

    额,有趣;首先现在源码,没什么好说的

    $tar -xzf SuiteSparse-4.4.3.tar.gz

    $cd SuiteSparse

    $vim SuiteSparse_config/SuiteSparse_config.mk

    修改OpenBLAS的选项,(哦, 对了,您得安装好这个哎,不过我已经完成,在安装th时做的。)

    # OpenBLAS
    BLAS = -lopenblas -L/opt/OpenBLAS/lib   #因为我的OpenBLAS安装在此了

    后来SuiteSparse,安装在默认的路径下了:/usr/local/lib  + /usr/local/include/ ,这是主要考虑到大家都会用到他,当然你也可以修改上述的.mk文件,配置自己的路径

    里面的GCC可能需要打开,

    另外,有时也需要把/opt/OpenBLAS/lib 加入到 $LD_LIBRARY_PATH 当中。

    6,安装Numpy

    下载源码包,

    $tar -xzf Numpy-1.9.1.tgz

    $cd Numpy-1.9.1

    看到不少资料建议此时修改site.cfg,来完成后续编译,如果是懒人,可以酱紫:

    $~/python2.7/bin/python2.7  setup.py build --fcompiler=gnu95 --force,

    不过后续有很多麻烦,还会回退到这里。

    但是如果勤快………  ^_^:

    $cp site.cfg.example site.cfg

    $vim site.cfg

    [DEFAULT]
    library_dirs = /usr/local/lib:/home/My_name/atlas/lib
    include_dirs = /usr/local/include:/home/My_name/atlas/include

    [blas_opt]
    libraries = f77blas, cblas, atlas

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

    [openblas]
    libraries = openblas
    library_dirs = /opt/OpenBLAS/lib
    include_dirs = /opt/OpenBLAS/include

    然后,保存退出,继续编译,记得之前python2.7的安装路径,以及所使用的是gfortran进行编译的,

    $~/python2.7/bin/python2.7 setup.py build --fcompiler=gnu95    

    $~/python2.7/bin/python2.7 setup.py install

    7,安装scipy

    下载源码包,这样安装最粗暴

    $tar -xJf scipy-0.15.1.tar.xz

    $cd scipy-0.15.1/

    之前看到不少文档说,这里可以修改site.cfg,可是没有啊。。。于是,就直接把之前numpy中的site.cfg拷贝过来充数

    $cp ../Numpy-1.9.1/site.cfg ./

    阿西吧,坑爹啊,肿么没人告诉我。。

    $~/python2.7/bin/python2.7 setup.py build --fcompiler=gnu95

    能跑下去,那就继续,这是一个蛋疼的历史过程,去研究下其他代码或者写稿报告神马的,只要不虚度年华。。

    $~/python2.7/bin/python2.7 setup.py install

    =========  我不是分割线  ===============

    测试下呗,看人品如何:首先逃离原来的scipy安装目录

    $cd ../        

    翱翔:

    $~/python2.7/bin/python2.7

    >>>import nose

    >>>import numpy

    >>>import scipy

    Ctrl+D

  • 相关阅读:
    世界人工智能大会记录
    [AI开发]将深度学习技术应用到实际项目
    [AI开发]centOS7.5上基于keras/tensorflow深度学习环境搭建
    [AI开发]视频多目标跟踪高级版(离自动驾驶又‘近’了一点点)
    [AI开发]基于深度学习的视频多目标跟踪实现
    [AI开发]Python+Tensorflow打造自己的计算机视觉API服务
    自己实现斗地主引擎
    Pycharm 2017.1 激活服务器
    adb无线网络调试
    adb devices连接提示 Android offline或unauthorized的解决办法
  • 原文地址:https://www.cnblogs.com/superniaoren/p/4255376.html
Copyright © 2011-2022 走看看