在Amazon EC2上安装numpy
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Amazon EC2上安装numpy相关的知识,希望对你有一定的参考价值。
我在Amazon EC2服务器上安装numpy时遇到问题。我尝试在虚拟环境中使用easy_install,pip,pip,使用python 2.7在另一个虚拟环境中进行pip ...
每次我尝试,它失败的错误:gcc: internal compiler error: Killed (program cc1)
,然后进一步下线我得到一堆python错误,easy_install得到:ImportError: No module named numpy.distutils
,并与我得到:UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 72: ordinal not in range(128)
。
EC2实例正在运行内核3.4.43-43.43.amzn1.x86_64。有人解决了这个问题吗? Numpy对我来说一直很难安装,但我通常可以搞清楚......在这一点上我并不关心它是否属于它自己的virtualenv,我只想安装它。
安装Numpy的要求
- c编译器(gcc)
- fortran编译器(gfortran)
- python头文件(2.4.x - 3.2.x)
- 强烈推荐BLAS或LAPACK
我写了一个脚本给install virtualenv and scikit-learn以及所有依赖项。您可以跟进numpy安装,这非常简单。我复制了下面的相关代码。
sudo yum -y install gcc-c++ python27-devel atlas-sse3-devel lapack-devel
wget https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.11.2.tar.gz
tar xzf virtualenv-1.11.2.tar.gz
python27 virtualenv-1.11.2/virtualenv.py sk-learn
. sk-learn/bin/activate
pip install numpy
只需复制/粘贴,点击输入,(喝一杯咖啡),你就可以在EC2上使用virtualenv和numpy了。
如果要验证numpy是否找到了优化的线性代数库,请运行:
(sk-learn)[ec2-user@ip-10-99-17-223 ~]$ python -c "import numpy; numpy.show_config()"
如果您看到类似于以下内容的内容,那么您已经完成了设置。
atlas_threads_info:
libraries = ['lapack', 'ptf77blas', 'ptcblas', 'atlas']
library_dirs = ['/usr/lib64/atlas-sse3']
define_macros = [('ATLAS_INFO', '"\"3.8.4\""')]
language = f77
include_dirs = ['/usr/include']
blas_opt_info:
libraries = ['ptf77blas', 'ptcblas', 'atlas']
library_dirs = ['/usr/lib64/atlas-sse3']
define_macros = [('ATLAS_INFO', '"\"3.8.4\""')]
language = c
include_dirs = ['/usr/include']
atlas_blas_threads_info:
libraries = ['ptf77blas', 'ptcblas', 'atlas']
library_dirs = ['/usr/lib64/atlas-sse3']
define_macros = [('ATLAS_INFO', '"\"3.8.4\""')]
language = c
include_dirs = ['/usr/include']
lapack_opt_info:
libraries = ['lapack', 'ptf77blas', 'ptcblas', 'atlas']
library_dirs = ['/usr/lib64/atlas-sse3']
define_macros = [('ATLAS_INFO', '"\"3.8.4\""')]
language = f77
include_dirs = ['/usr/include']
lapack_mkl_info:
NOT AVAILABLE
blas_mkl_info:
NOT AVAILABLE
mkl_info:
NOT AVAILABLE
有关更详细的说明,请阅读installing-scikit-learn-on-amazon-ec2。我专门编写了博客文章来记住安装步骤,并有一个简短的操作指南。我尝试使帖子和安装脚本保持最新。
我最后只是通过yum,sudo yum install numpy
安装numpy。我想这是我现在能做的最好的事情。当使用virtualenv并且我需要numpy时,我会告诉它使用站点包。
感谢@Robert的建议。
只是为了存档。如果您正在运行Ubuntu EC2并且您已经安装了pip,那么您可以执行以下操作:
对于Python2:
pip install numpy --user
对于Python 3:
pip3 install numpy --user
关键是user
这个词。
您可以尝试使用https://www.continuum.io的Anaconda Python发行版,它使用conda Python版本和包管理器。我发现这个发行版配置精良,便于科学计算工作。
我可以使用wget和他们的下载网页上的linux下载链接下载并安装到EC2实例中。例如,对于Python 2:
...
$ chmod a + x Anaconda2-2.5.0-Linux-x86_64.sh
$ ./anaconda2-2.5.0-Linux-小86_64.是
...
$ source .bashrc
$ conda create --name myEnvName biopython
$ source激活myEnvName
$ python -c'import numpy;打印(numpy.version.version)”
1.10.4
以上是关于在Amazon EC2上安装numpy的主要内容,如果未能解决你的问题,请参考以下文章
在 Amazon EMR 4.1 和 Amazon EC2 上安装 Impala
如何在 amazon micro ec2 服务器(Amazon Linux)上安装 SVN 客户端
在 Amazon EC2 实例上安装 php 和 apache