Kesulitan menginstal scipy di virtualenv pada amazon ec2 linux micro contoh
Saya telah berhasil diinstal scipy
di default python compiler pada amazon ec2 instance micro (Ubuntu 13.04). Namun saya tidak bisa install scipy
di virtualenv.
pip menginstal scipy
berakhir dengan kesalahan ini
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
dan
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)
Sebelum ada yang bertanya. pip freeze
untuk compiler default kembali
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 freeze
perintah untuk kembali virtualenv
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
42
5
Salah satu solusinya adalah untuk sementara mengaktifkan swap di situs micro contoh. Seperti yang dijelaskan di JADI posting, mengaktifkan 1gb swap melalui:
Setelah swap pada, instal scipy melalui pip:
Setelah scipy berhasil menginstal, anda dapat menonaktifkannya melalui:
Ini bekerja untuk saya:
Lihat:
https://github.com/pypa/pip/blob/9a23d4ed119327d3b823ec223aaead90964bac58/pip/basecommand.py#L56-L63
catatan:
Ya, 512MB tidak cukup untuk mengkompilasi C++ file.
Pilihan terbaik anda adalah untuk membangun Scipy sebagai sebuah paket biner (bdist, atau telur, atau, yang lebih modern roda) misalnya melalui
python setupegg.py bdist_egg
pada mesin yang berbeda dengan lingkungan yang kompatibel. Misalnya, menggunakan yang sama Linux versi EC2 instance dalam mesin virtual.Secara umum,'s baik untuk diingat bahwa ketika
pip
menginstal paket, mengkompilasi file sumber. Jika paket tidak kecil, hal ini tidak efisien dan's baik untuk menggunakan paket binary.Roda
format paket yang seharusnya untuk bermain dengan baik bersama-sama dengan pip.bagi saya kesalahan sedikit berbeda.
Dengan demikian saya harus menginstal
dan kemudian bekerja.
Aku mulai keluar dari memori virtual kesalahan selama
scipy
kompilasi padat2.mikro
, saya pikirnumpy
yang disusun baik-baik saja. Anyway, saya kira bahwa Dolan Antenucci's jawaban akan memperbaiki masalah saya, tapi bukan saya pergi rute lain, kompromi, yang tidak bekerja.I'm menjalankan
Ubuntu
contoh jadi ingatlah bahwa dalam pikiran.Kompromi adalah bahwa anda memenangkan't dapat menggunakan versi yang berbeda di antara berbagai lingkungan virtual dan anda're terikat dengan versi di repo.
Sebuah kata peringatan: