43

scipyAmazon ec2 マイクロ インスタンス (Ubuntu 13.04) のデフォルトの Python コンパイラに正常にインストールされました。ただしscipy、virtualenv にインストールできません。

pip install scipyこのエラーで終了します

scipy/sparse/sparsetools/csr_wrap.cxx: In function ‘void init_csr()’:

scipy/sparse/sparsetools/csr_wrap.cxx:73303:21: warning: variable ‘md’ set but not used [-Wunused-but-set-variable]

c++: internal compiler error: Killed (program cc1plus)

Please submit a full bug report,

with preprocessed source if appropriate.

See <file:///usr/share/doc/gcc-4.7/README.Bugs> for instructions.

----------------------------------------
Cleaning up...
Command /home/ubuntu/pnr/bin/python -c "import setuptools;__file__='/home/ubuntu/pnr/build/scipy/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-t8Drvd-record/install-record.txt --single-version-externally-managed --install-headers /home/ubuntu/pnr/include/site/python2.7 failed with error code -9 in /home/ubuntu/pnr/build/scipy

Traceback (most recent call last):
  File "/home/ubuntu/pnr/bin/pip", line 9, in <module>
    load_entry_point('pip==1.4.1', 'console_scripts', 'pip')()
  File "/home/ubuntu/pnr/local/lib/python2.7/site-packages/pip/__init__.py", line 148, in main
    return command.main(args[1:], options)
  File "/home/ubuntu/pnr/local/lib/python2.7/site-packages/pip/basecommand.py", line 169, in main
    text = '\n'.join(complete_log)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 53: ordinal not in range(128)

誰かが尋ねる前に。pip freezeデフォルトのコンパイラの戻り値

Cheetah==2.4.4
Landscape-Client==12.12
M2Crypto==0.21.1
PAM==0.4.2
Pillow==2.0.0
PyYAML==3.10
Twisted-Core==12.3.0
Twisted-Names==12.3.0
Twisted-Web==12.3.0
apt-xapian-index==0.45
argparse==1.2.1
boto==2.3.0
chardet==2.0.1
cloud-init==0.7.2
configobj==4.7.2
distribute==0.6.34
distro-info==0.10
euca2ools==2.1.1
numpy==1.7.1
oauth==1.0.1
paramiko==1.7.7.1
prettytable==0.6.1
pyOpenSSL==0.13
pycrypto==2.6
pycurl==7.19.0
pygobject==3.8.0
pyserial==2.6
python-apt==0.8.8ubuntu6
python-debian==0.1.21-nmu2ubuntu1
requests==1.1.0
scipy==0.11.0
six==1.2.0
ssh-import-id==3.14
urllib3==1.5
virtualenv==1.10.1
wsgiref==0.1.2
zope.interface==4.0.5

pip freezevirtualenv のコマンドが返されます

Cython==0.19.2
Flask==0.10.1
Flask-Bootstrap==3.0.0.1
Flask-WTF==0.9.3
Jinja2==2.7.1
MarkupSafe==0.18
WTForms==1.0.5
Werkzeug==0.9.4
argparse==1.2.1
beautifulsoup4==4.3.2
itsdangerous==0.23
numpy==1.7.1
pymongo==2.6.2
requests==2.0.0
wsgiref==0.1.2
4

5 に答える 5

28

これは私のために働いた:

pip --no-cache-dir install scipy

見る:

ノート:

  • 他のサービス プロバイダー、ハードウェア、VM、コンテナーで機能します。
  • RAM 割り当てサイズが 1GB の場合
  • キャッシュされたディレクトリのメモリ使用量と使用可能なRAMの差を計算するだけです
于 2016-11-23T01:32:42.040 に答える
8

はい、その C++ ファイルをコンパイルするには 512MB では不十分です。

最良の選択肢は、Scipy をバイナリ パッケージ (bdist、または Egg 、またはより最新のWheels ) としてビルドすることです。たとえば、互換性のある環境を備えた別のマシンを使用しますpython setupegg.py bdist_eggたとえば、仮想マシンの EC2 インスタンスと同様の Linux バージョンを使用します。

pip一般に、はパッケージをインストールするときにソース ファイルをコンパイルすることを覚えておくとよいでしょう。パッケージが小さくない場合、これは非効率的であり、バイナリ パッケージを使用することをお勧めします。パッケージ形式はwheelpip とうまく連携するはずです。

于 2013-10-25T18:18:52.390 に答える
1

scipyでのコンパイル中に仮想メモリ不足エラーが発生しました。問題なくコンパイルされたt2.microと思いますnumpy。とにかく、私はDolan Antenucciの答えが私の問題を解決すると思いますが、代わりに別のルート、つまり妥協に行きました。

私はUbuntuインスタンスを実行しているので、それを覚えておいてください。

sudo apt-get -y install python-scipy && echo -e "\nok, installed python-scipy, continuing...\n"

# add scipy to the venv
mkdir ~/venv_PROJECT/lib/python2.7/site-packages/scipy/
ln -s /usr/lib/python2.7/dist-packages/scipy/* ~/venv_PROJECT/lib/python2.7/site-packages/scipy/

# add numpy to the venv
mkdir ~/venv_PROJECT/lib/python2.7/site-packages/numpy/
ln -s /usr/lib/python2.7/dist-packages/numpy/* ~/venv_PROJECT/lib/python2.7/site-packages/numpy/

# add PIL to the venv
mkdir ~/venv_PROJECT/lib/python2.7/site-packages/PIL/
ln -s /usr/lib/python2.7/dist-packages/PIL/* ~/venv_PROJECT/lib/python2.7/site-packages/PIL/

妥協点は、異なる仮想環境間で異なるバージョンを使用できず、レポのバージョンに縛られていることです。

警告の言葉:

>>> import scipy
>>> scipy.__version__
'0.13.3'

>>> import numpy
>>> numpy.__version__
'1.8.2'

>>> from PIL import Image
>>> Image.VERSION
'1.1.7'
于 2015-12-08T16:16:15.993 に答える