簡體   English   中英

在Amazon EC2上安裝numpy

[英]Installing numpy on Amazon EC2

我在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 ,並使用pip我得到: 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

我編寫了一個腳本來安裝virtualenv和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

有關更詳細的說明,請閱讀安裝-scikit-learn-on-amazon-ec2 我專門編寫了博客文章來記住安裝步驟,並有一個簡短的操作指南。 我嘗試使帖子和安裝腳本保持最新。

我最后只是通過yum安裝numpy, sudo yum install 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:

$ wget https://3230d63b5fc54e62148e-c95ac804525aac4b6dba79b00b39d1d3.ssl.cf1.rackcdn.com/Anaconda2-2.5.0-Linux-x86_64.sh

...

$ chmod a + x Anaconda2-2.5.0-Linux-x86_64.sh

$ ./Anaconda2-2.5.0-Linux-x86_64.sh

...

$ source .bashrc

$ conda create --name myEnvName biopython

$ source激活myEnvName

$ python -c'import numpy; 打印(numpy.version.version)”

1.10.4

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM