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
Salah satu solusinya adalah untuk sementara mengaktifkan swap di situs micro contoh. Seperti yang dijelaskan di JADI posting, mengaktifkan 1gb swap melalui:
sudo /bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
sudo /sbin/mkswap /var/swap.1
sudo /sbin/swapon /var/swap.1
Setelah swap pada, instal scipy melalui pip:
sudo apt-get install -y libatlas-base-dev gfortran python-dev build-essential g++
sudo pip install numpy
sudo pip install scipy
Setelah scipy berhasil menginstal, anda dapat menonaktifkannya melalui:
sudo swapoff /var/swap.1
sudo rm /var/swap.1
Ini bekerja untuk saya:
pip --no-cache-dir install scipy
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.
Blas (http://www.netlib.org/blas/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [blas]) or by setting
the BLAS environment variable.
----------------------------------------
Cleaning up...
Command /home/kdixit/pyvirt/bin/python -c "import setuptools;__file__='/home/kdixit/pyvirt/build/scipy/setup.py';exec(compile(open(__file__).read().replace('\r\n
Dengan demikian saya harus menginstal
sudo apt-get install libblas-dev
dan kemudian bekerja.
Aku mulai keluar dari memori virtual kesalahan selama scipy
kompilasi pada t2.mikro
, saya pikir numpy
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.
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/
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:
>>> import scipy
>>> scipy.__version__
'0.13.3'
>>> import numpy
>>> numpy.__version__
'1.8.2'
>>> from PIL import Image
>>> Image.VERSION
'1.1.7'