linux python 安装 nose lapack atlas numpy scipy
linux python 安装 nose lapack atlas numpy scipy
--http://lib.csdn.net/article/python/1262
作者:maple1149
The first step of machine larning .
环境配置:
OS:ubuntu 10.04
Python :Python 2.6.5
1.安装nose
这个安装还比较顺利,基本没报错。。。
下载nose: https://nose.readthedocs.org/en/latest/
cd nose-1.3.4
python setup.py install
检验安装成功:
#python
>>> import nose
>>> nose
<module 'nose' from '/usr/local/lib/python2.6/dist-packages/nose-1.3.4-py2.6.egg/nose/__init__.pyc'>
>>>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
2.安装 lapack
官方下载地址: http://www.netlib.org/lapack/
我下的是lapack-3.5.0.tgz。下好了,暂时放着,后面有用。。。
3.安装atlas
下载地址: http://sourceforge.net/projects/math-atlas/,下载最新版本:atlas3.10.2.tar.bz2 (下载日期:2014-10-26)
tar -jxvf atlas3.10.2.tar.bz2
cd ATLAS
mkdir myobj64
cd myobj64
配置configure:
第一种配置方式(笔者使用第一种方式的,第二种没试过):
../configure -b 32 -Fa alg -fPIC -shared –prefix=/配置atlas的安装路径/ATLAS
-–with-netlib-lapack-tarfile=/lapack安装压缩文件存放的目录/lapack-3.5.0.tgz
-–with-netlib-lapack-tarfile 这个编译选项 前面是 ‘--’ 2个 横杆。网上很多都是一个的,一顿报错了。。看了里面的configure源文件才知道。。。
第二种配置方式:
sudo ../configure -b 64 -D c -DPentiumCPS=3901.000
-Fa alg -fPIC –prefix=/opt/atlas3.10.2/
-–with-netlib-lapack-tarfile=/opt/lapack-3.5.0/lapack-3.5.0.tgz
其中的参数说明如下:
-b 指定编译出库的类型(32位库还是64位库)根据自己的机器来设置
-D c -DPentiumCPS 是指定你的CPU的时钟频率,可以通过 grep MHz /proc/cpuinfo 得到
numpy_scipy/ATLAS/my64Obj$ grep MHz /proc/cpuinfo
cpu MHz : 3901.000
cpu MHz : 3901.000
cpu MHz : 3901.000
cpu MHz : 3901.000
-Fa alg -fPIC 得到与位置无关的代码,生成动态的共享库
–prefix 为安装路径
-–with-netlib-lapack 则是制定lapack库文件(此时lapack库文件还没有生成,先随便指定一个)
执行上述命令出错,提示
Unable to find usable compiler for F77; abortingMake sure compilers are
in your path, and specify good compilers to configure
(see INSTALL.txt or ‘configure –help’ for details)make[1]: ***
[atlas_run] Error 8
make[1]: Leaving directory
`/home/homer/Downloads/tool_server/python/numpy_scipy/ATLAS/my64Obj’
make: *** [IRun_comp] Error 2
ERROR 512 IN SYSCMND: ‘make IRun_comp args=”-v 0 -o atlconf.txt -O 1 -A
26 -Si nof77 0 -V 480 -Fa ic ‘-fPIC’ -Fa sm ‘-fPIC’ -Fa dm ‘-fPIC’ -Fa
sk ‘-fPIC’ -Fa dk ‘-fPIC’ -Fa xc ‘-fPIC’ -Fa gc ‘-fPIC’ -Fa if ‘-fPIC’
-b 64″‘
mkdir src bin tune interfaces
cd src ; mkdir testing auxil blas lapack pthreads threads
cd src/blas ; \
mkdir f77reference reference gemv ger gemm kbmm \
level1 level2 level3 pklevel3
这是因为Ubuntu系统没有F77编译器,需要安装,安装命令如下:
sudo apt-get install fort77
- 1
ps:这个配置过程时间很长,我在虚拟机上跑了好几个小时。。。渣机器伤不起。。。最后还报了错,不过直接忽略了,最后全部装好,还是能用的。。
然后是:
make
make check
make time
make install
- 1
4.安装 numpy
首先配置numpy目录下的site.cfg文件,指明atlas库的位置:
下载地址: https://pypi.python.org/pypi/numpy
下载最新版本: numpy-1.9.0.tar.gz
tar -zxvf numpy-1.9.0.tar.gz
cd numpy-1.9.0
接下来是配置 site.cfg文件。这是网上有些文章是这么介绍的,我也照做了,后来发现 不去配置也没关系。因此我建议先不去配置,直接安装:
python setup.py install
如果安装没有报错了。。那就不要配置site.cfg了
ps:配置site.cfg文件的方式可以看底下的参考文献。
5.安装scipy(大坑来了。。。)
下载地址: https://pypi.python.org/pypi/scipy,下载最新版本:scipy-0.14.0.tar.gz
tar -zxvf scipy-0.14.0.tar.gz
cd scipy-0.14.0
然后网上有些文章又说要配置site.cfg。可我在 解压出来的文件夹里更笨找不到这个site.cfg文件。所以直接跳过这一步了。
然后执行
python setup.py install
又是一顿报错。。。。
找到了 stackoverflow上同样的问题以及答案。
Python
scipy needs BLAS?
原来在 安装 scipy之前 还要安装 blas
随便找一个目录,下载blas
wget http://www.netlib.org/blas/blas.tgz
tar xzf blas.tgz
cd BLAS
## NOTE: The selected fortran compiler must be consistent for BLAS, LAPACK, NumPy, and SciPy.
## For GNU compiler on 32-bit systems:
#g77 -O2 -fno-second-underscore -c *.f # with g77
#gfortran -O2 -std=legacy -fno-second-underscore -c *.f # with gfortran
## OR for GNU compiler on 64-bit systems:
#g77 -O3 -m64 -fno-second-underscore -fPIC -c *.f # with g77
gfortran -O3 -std=legacy -m64 -fno-second-underscore -fPIC -c *.f # with gfortran
## OR for Intel compiler:
#ifort -FI -w90 -w95 -cm -O3 -unroll -c *.f
# Continue below irrespective of compiler:
ar r libfblas.a *.o
ranlib libfblas.a
rm -rf *.o
export BLAS=~/自己的目录/BLAS/libfblas.a
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
这里有4种编译方式,分别是 32位和64机器的情况,以及 g77和gfortran编译器的情况。
笔者的机器是32位,g77和gfortran编译器都没装。刚开始打算安装g77,发现这个编译器几乎要淘汰了,安装包都找不到。
于是安装了gfortran
按照下述操作即可
sudo apt-get update
sudo apt-get install gfortran
然后选择上面的 编译指令
gfortran -O2 -std=legacy -fno-second-underscore -c *.f
ar r libfblas.a *.o ranlib libfblas.a rm -rf *.o
- 1
查看下BLAS目录,确认生成了libfblas.a.
export BLAS=/自己的目录/BLAS/libfblas.a #这边很重要,不然后面安装scipy要报错的。。。
然后再把第2步下载的lapack-3.5.0.tgz 解压出来
tar xzf lapack.tgz
cd lapack-*/
cp INSTALL/make.inc.gfortran make.inc # on Linux with lapack-3.2.1 or newer
make lapacklib
make clean
export LAPACK=~/自己的目录/lapack-*/liblapack.a
- 1
- 2
- 3
- 4
- 5
- 6
按照上述操作即可
最后一步的 export 改成自己的目录。
最后,终于可以安装 scipy了
回到刚才的scipy目录
cd scipy-0.14.0
安装
python setup.py install
6.验证成功
打开 python,注意在打开python之前 不能在scipy这些目录下,否则 在 import scipy的时候会报错。
如下错误
root@ubuntu:~/machine_learning/scipy-0.14.0# python
Python 2.6.5 (r265:79063, Oct 1 2012, 22:07:21)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import scipy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "scipy/__init__.py", line 112, in <module>
raise ImportError(msg)
ImportError: Error importing scipy: you cannot import scipy while
being in scipy source directory; please exit the scipy source
tree first, and relaunch your python intepreter.
>>>
- 1
换个目录,再进入python就好了。
root@ubuntu:~/machine_learning# python
Python 2.6.5 (r265:79063, Oct 1 2012, 22:07:21)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import nose
>>> nose
<module 'nose' from '/usr/local/lib/python2.6/dist-packages/nose-1.3.4-py2.6.egg/nose/__init__.pyc'>
>>> import numpy
>>> numpy
<module 'numpy' from '/usr/local/lib/python2.6/dist-packages/numpy/__init__.pyc'>
>>> import scipy
>>> scipy
<module 'scipy' from '/usr/local/lib/python2.6/dist-packages/scipy/__init__.pyc'>
>>>
这样子就表示安装都成功了。。。
参考资料:
Linux
安装numpy和scipy
Python
scipy needs BLAS?
python
: scipy install on ubuntu
菜鸟 ubuntu下安装scipy全过程
(主要是安装atlas)
-------------------------------------------------------------------------------------------------------------------------
red hat linux离线安装python机器学习包 这篇就够了!
http://blog.csdn.net/chengfulukou/article/details/53344522



- libpng(下载地址)
- freetype(下载地址)
- matplotlib(下载地址)
- 例如出现“no local packages on working download links found for pyparsing” ,就下载此包安装即可
- matplotlib(下载地址)
linux python 安装 nose lapack atlas numpy scipy的更多相关文章
- windows下安装python科学计算环境,numpy scipy scikit ,matplotlib等
安装matplotlib: pip install matplotlib 背景: 目的:要用Python下的DBSCAN聚类算法. scikit-learn 是一个基于SciPy和Numpy的开源机器 ...
- linux python 安装到用户目录
在公司服务器中,python可能存在多个版本,而且python中的包也有多个不同版本,由于不同猿的需求不同,经常会引起程序冲突,影响工作效率.因此,给大家分享一个在没有root权限时,将python安 ...
- Linux python安装
Linux 安装 Python3.5 1. 准备 操作系统:Red Hat Enterprise Linux Server release 6.5 (Santiago) Python 安装包:Py ...
- linux python 安装 pymssql
其实也不是很完整的. 我主要在dockers中的alpine linux 下进行开发. 这里主要说的就是如何在alpine下安装pymssql 多级依赖 pymssq 依赖 Cython , Cyth ...
- linux python 安装 pip出现 No module named 'setuptools'
1.下载pip wget --no-check-certificate https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz#m ...
- [python] 安装numpy+scipy+matlotlib+scikit-learn及问题解决
这篇文章主要讲述Python如何安装Numpy.Scipy.Matlotlib.Scikit-learn等库的过程及遇到的问题解决方法.最近安装这个真是一把泪啊,各种不兼容问题和报错,希望文章对你有所 ...
- Linux入门(10)——Ubuntu16.04使用pip3和pip安装numpy,scipy,matplotlib等第三方库
安装Python3第三方库numpy,scipy,matplotlib: sudo apt install python3-pip pip3 install numpy pip3 install sc ...
- matplotlib numpy scipy 的安装
一:windows 端的安装 #cmd指令 python -m pip install --user numpy scipy matplotlib ipython jupyter pandas sym ...
- Windows python 安装 nNumpy、Scipy、matplotlib模块
折腾了 很久,总结一些. 首先如果python 是64位,安装32位的numpy ,Scipy,或者matplotlib 模块. 会出现很多问题. 比如当你 在python 导入 Numpy 时,导入 ...
随机推荐
- Java IO的Reactor模式
1. Reactor出现的原因 Reator模式是大多数IO相关组件如Netty.Redis在使用时的IO模式,为什么需要这种模式,如何设计来解决高性能并发的呢? 最最原始的网络编程思路就是服务 ...
- 初识CGI
CGI Web 服务器只能生成静态内容,而用户请求动态内容时,Web服务器只能借助一些应用程序来实现.CGI时一套标准,它规定了Web服务器和应用程序之间的交互方式. 静态内容与动态内容 要想理解什么 ...
- SQL学习笔记之MySQL查询练习2
(网络搜集) 0x00 数据准备 CREATE TABLE students (sno ) NOT NULL, sname ) NOT NULL, ssex ) NOT NULL, sbirthday ...
- 前端学习笔记之CSS介绍
阅读目录 一 什么是CSS 二 为何要用CSS 三 如何使用CSS 一 什么是CSS CSS全称Cascading Style Sheet层叠样式表,是专用用来为HTML标签添加样式的. 样式指的是H ...
- Python3.x:os.path模块
Python3.x:os.path模块 #返回绝对路径 os.path.abspath(path) #返回文件名 os.path.basename(path) #返回list(多个路径)中,所有pat ...
- 2018-2019-1 20189215 《Linux内核原理与分析》第七周作业
<庖丁解牛>第六章书本知识总结 操作系统内个实现操作系统的三大管理功能:进程管理.内存管理.文件系统.分别对应<操作系统原理>中最重要的3个抽象概念是进程.虚拟内存和文件. L ...
- android驱动学习---led实验
======================== 驱动: 内核:android-kernel 2.6.36 (必须对应你的板子上内核,不然会出现insmod错误) 目的:通过android应用层用户 ...
- python爬虫scrapy学习之篇二
继上篇<python之urllib2简单解析HTML页面>之后学习使用Python比较有名的爬虫scrapy.网上搜到两篇相应的文档,一篇是较早版本的中文文档Scrapy 0.24 文档, ...
- Codeforces Round #320 (Div. 2) [Bayan Thanks-Round] E. Weakness and Poorness 三分
E. Weakness and Poorness time limit per test 2 seconds memory limit per test 256 megabytes input sta ...
- Postman模拟高并发执行
一次,执行1000次. 看看服务器能否承受住. 查看每一次的执行情况,查看总的执行情况.成功情况,失败情况.