2012-08-08 25 views
30

ich zur Zeit nach dem Tutorial Installing the SciPy Stack installieren SciPy auf Ubuntu   12.04 (Precise Pangolin) (Ich kann nicht apt-get install verwenden, weil ich eine aktuelle Version benötigen).SciPy/Python-Installation auf Ubuntu

Aber ich Fehler, wenn ich die folgenden Befehle zu tun:

python setup.py build 
sudo python setup.py install --prefix=/usr/local # Installs to /usr/local 

python setup.py build 

[email protected]:~/Downloads/scipy-0.11.0rc1$ python setup.py buildRunning from scipy source directory. 
blas_opt_info: 
blas_mkl_info: 
    libraries mkl,vml,guide not found in /usr/local/lib 
    libraries mkl,vml,guide not found in /usr/lib 
    libraries mkl,vml,guide not found in /usr/lib/i386-linux-gnu 
    NOT AVAILABLE 

atlas_blas_threads_info: 
Setting PTATLAS=ATLAS 
    libraries ptf77blas,ptcblas,atlas not found in /usr/local/lib 
    libraries ptf77blas,ptcblas,atlas not found in /usr/lib/sse2 
    libraries ptf77blas,ptcblas,atlas not found in /usr/lib 
    libraries ptf77blas,ptcblas,atlas not found in /usr/lib/i386-linux-gnu/sse2 
    libraries ptf77blas,ptcblas,atlas not found in /usr/lib/i386-linux-gnu 
    NOT AVAILABLE 

atlas_blas_info: 
    libraries f77blas,cblas,atlas not found in /usr/local/lib 
    libraries f77blas,cblas,atlas not found in /usr/lib/sse2 
    libraries f77blas,cblas,atlas not found in /usr/lib 
    libraries f77blas,cblas,atlas not found in /usr/lib/i386-linux-gnu/sse2 
    libraries f77blas,cblas,atlas not found in /usr/lib/i386-linux-gnu 
    NOT AVAILABLE 

/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py:1423: UserWarning: 
    Atlas (http://math-atlas.sourceforge.net/) libraries not found. 
    Directories to search for the libraries can be specified in the 
    numpy/distutils/site.cfg file (section [atlas]) or by setting 
    the ATLAS environment variable. 
    warnings.warn(AtlasNotFoundError.__doc__) 
blas_info: 
    libraries blas not found in /usr/local/lib 
    libraries blas not found in /usr/lib 
    libraries blas not found in /usr/lib/i386-linux-gnu 
    NOT AVAILABLE 

/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py:1432: UserWarning: 
    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. 
    warnings.warn(BlasNotFoundError.__doc__) 
blas_src_info: 
    NOT AVAILABLE 

/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py:1435: UserWarning: 
    Blas (http://www.netlib.org/blas/) sources not found. 
    Directories to search for the sources can be specified in the 
    numpy/distutils/site.cfg file (section [blas_src]) or by setting 
    the BLAS_SRC environment variable. 
    warnings.warn(BlasSrcNotFoundError.__doc__) 
Traceback (most recent call last): 
    File "setup.py", line 208, in <module> 
    setup_package() 
    File "setup.py", line 199, in setup_package 
    configuration=configuration) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/core.py", line 152, in setup 
    config = configuration() 
    File "setup.py", line 136, in configuration 
    config.add_subpackage('scipy') 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 1002, in add_subpackage 
    caller_level = 2) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 971, in get_subpackage 
    caller_level = caller_level + 1) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 908, in _get_configuration_from_setup_py 
    config = setup_module.configuration(*args) 
    File "scipy/setup.py", line 8, in configuration 
    config.add_subpackage('integrate') 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 1002, in add_subpackage 
    caller_level = 2) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 971, in get_subpackage 
    caller_level = caller_level + 1) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 908, in _get_configuration_from_setup_py 
    config = setup_module.configuration(*args) 
    File "scipy/integrate/setup.py", line 10, in configuration 
    blas_opt = get_info('blas_opt',notfound_action=2) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py", line 320, in get_info 
    return cl().get_info(notfound_action) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py", line 471, in get_info 
    raise self.notfounderror(self.notfounderror.__doc__) 
numpy.distutils.system_info.BlasNotFoundError: 
    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. 
Error in sys.excepthook: 
Traceback (most recent call last): 
    File "/usr/lib/python2.7/dist-packages/apport_python_hook.py", line 64, in apport_excepthook 
    from apport.fileutils import likely_packaged, get_recent_crashes 
    File "/usr/lib/python2.7/dist-packages/apport/__init__.py", line 1, in <module> 
    from apport.report import Report 
    File "/usr/lib/python2.7/dist-packages/apport/report.py", line 18, in <module> 
    import problem_report 
    File "/usr/lib/python2.7/dist-packages/problem_report.py", line 14, in <module> 
    import zlib, base64, time, sys, gzip, struct, os 
    File "/usr/lib/python2.7/gzip.py", line 10, in <module> 
    import io 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/io/__init__.py", line 83, in <module> 
    from matlab import loadmat, savemat, byteordercodes 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/io/matlab/__init__.py", line 11, in <module> 
    from mio import loadmat, savemat 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/io/matlab/mio.py", line 15, in <module> 
    from mio4 import MatFile4Reader, MatFile4Writer 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/io/matlab/mio4.py", line 9, in <module> 
    import scipy.sparse 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/sparse/__init__.py", line 180, in <module> 
    from csr import * 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/sparse/csr.py", line 12, in <module> 
    from sparsetools import csr_tocsc, csr_tobsr, csr_count_blocks, \ 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/sparse/sparsetools/__init__.py", line 4, in <module> 
    from csr import * 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/sparse/sparsetools/csr.py", line 25, in <module> 
    _csr = swig_import_helper() 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/sparse/sparsetools/csr.py", line 17, in swig_import_helper 
    import _csr 
ImportError: No module named _csr 

Original exception was: 
Traceback (most recent call last): 
    File "setup.py", line 208, in <module> 
    setup_package() 
    File "setup.py", line 199, in setup_package 
    configuration=configuration) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/core.py", line 152, in setup 
    config = configuration() 
    File "setup.py", line 136, in configuration 
    config.add_subpackage('scipy') 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 1002, in add_subpackage 
    caller_level = 2) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 971, in get_subpackage 
    caller_level = caller_level + 1) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 908, in _get_configuration_from_setup_py 
    config = setup_module.configuration(*args) 
    File "scipy/setup.py", line 8, in configuration 
    config.add_subpackage('integrate') 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 1002, in add_subpackage 
    caller_level = 2) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 971, in get_subpackage 
    caller_level = caller_level + 1) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 908, in _get_configuration_from_setup_py 
    config = setup_module.configuration(*args) 
    File "scipy/integrate/setup.py", line 10, in configuration 
    blas_opt = get_info('blas_opt',notfound_action=2) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py", line 320, in get_info 
    return cl().get_info(notfound_action) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py", line 471, in get_info 
    raise self.notfounderror(self.notfounderror.__doc__) 
numpy.distutils.system_info.BlasNotFoundError: 
    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. 

sudo python setup.py install prefix =/usr/local # installiert nach/usr/local

[email protected]:~/Downloads/scipy-0.11.0rc1$ sudo python setup.py install --prefix=/usr/local 
[sudo] password for michael: 
Running from scipy source directory. 
blas_opt_info: 
blas_mkl_info: 
    libraries mkl,vml,guide not found in /usr/local/lib 
    libraries mkl,vml,guide not found in /usr/lib 
    libraries mkl,vml,guide not found in /usr/lib/i386-linux-gnu 
    NOT AVAILABLE 

atlas_blas_threads_info: 
Setting PTATLAS=ATLAS 
    libraries ptf77blas,ptcblas,atlas not found in /usr/local/lib 
    libraries ptf77blas,ptcblas,atlas not found in /usr/lib/sse2 
    libraries ptf77blas,ptcblas,atlas not found in /usr/lib 
    libraries ptf77blas,ptcblas,atlas not found in /usr/lib/i386-linux-gnu/sse2 
    libraries ptf77blas,ptcblas,atlas not found in /usr/lib/i386-linux-gnu 
    NOT AVAILABLE 

atlas_blas_info: 
    libraries f77blas,cblas,atlas not found in /usr/local/lib 
    libraries f77blas,cblas,atlas not found in /usr/lib/sse2 
    libraries f77blas,cblas,atlas not found in /usr/lib 
    libraries f77blas,cblas,atlas not found in /usr/lib/i386-linux-gnu/sse2 
    libraries f77blas,cblas,atlas not found in /usr/lib/i386-linux-gnu 
    NOT AVAILABLE 

/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py:1423: UserWarning: 
    Atlas (http://math-atlas.sourceforge.net/) libraries not found. 
    Directories to search for the libraries can be specified in the 
    numpy/distutils/site.cfg file (section [atlas]) or by setting 
    the ATLAS environment variable. 
    warnings.warn(AtlasNotFoundError.__doc__) 
blas_info: 
    libraries blas not found in /usr/local/lib 
    libraries blas not found in /usr/lib 
    libraries blas not found in /usr/lib/i386-linux-gnu 
    NOT AVAILABLE 

/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py:1432: UserWarning: 
    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. 
    warnings.warn(BlasNotFoundError.__doc__) 
blas_src_info: 
    NOT AVAILABLE 

/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py:1435: UserWarning: 
    Blas (http://www.netlib.org/blas/) sources not found. 
    Directories to search for the sources can be specified in the 
    numpy/distutils/site.cfg file (section [blas_src]) or by setting 
    the BLAS_SRC environment variable. 
    warnings.warn(BlasSrcNotFoundError.__doc__) 
Traceback (most recent call last): 
    File "setup.py", line 208, in <module> 
    setup_package() 
    File "setup.py", line 199, in setup_package 
    configuration=configuration) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/core.py", line 152, in setup 
    config = configuration() 
    File "setup.py", line 136, in configuration 
    config.add_subpackage('scipy') 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 1002, in add_subpackage 
    caller_level = 2) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 971, in get_subpackage 
    caller_level = caller_level + 1) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 908, in _get_configuration_from_setup_py 
    config = setup_module.configuration(*args) 
    File "scipy/setup.py", line 8, in configuration 
    config.add_subpackage('integrate') 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 1002, in add_subpackage 
    caller_level = 2) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 971, in get_subpackage 
    caller_level = caller_level + 1) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 908, in _get_configuration_from_setup_py 
    config = setup_module.configuration(*args) 
    File "scipy/integrate/setup.py", line 10, in configuration 
    blas_opt = get_info('blas_opt',notfound_action=2) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py", line 320, in get_info 
    return cl().get_info(notfound_action) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py", line 471, in get_info 
    raise self.notfounderror(self.notfounderror.__doc__) 
numpy.distutils.system_info.BlasNotFoundError: 
    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. 
Error in sys.excepthook: 
Traceback (most recent call last): 
    File "/usr/lib/python2.7/dist-packages/apport_python_hook.py", line 64, in apport_excepthook 
    from apport.fileutils import likely_packaged, get_recent_crashes 
    File "/usr/lib/python2.7/dist-packages/apport/__init__.py", line 1, in <module> 
    from apport.report import Report 
    File "/usr/lib/python2.7/dist-packages/apport/report.py", line 18, in <module> 
    import problem_report 
    File "/usr/lib/python2.7/dist-packages/problem_report.py", line 14, in <module> 
    import zlib, base64, time, sys, gzip, struct, os 
    File "/usr/lib/python2.7/gzip.py", line 10, in <module> 
    import io 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/io/__init__.py", line 83, in <module> 
    from matlab import loadmat, savemat, byteordercodes 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/io/matlab/__init__.py", line 11, in <module> 
    from mio import loadmat, savemat 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/io/matlab/mio.py", line 15, in <module> 
    from mio4 import MatFile4Reader, MatFile4Writer 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/io/matlab/mio4.py", line 9, in <module> 
    import scipy.sparse 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/sparse/__init__.py", line 180, in <module> 
    from csr import * 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/sparse/csr.py", line 12, in <module> 
    from sparsetools import csr_tocsc, csr_tobsr, csr_count_blocks, \ 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/sparse/sparsetools/__init__.py", line 4, in <module> 
    from csr import * 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/sparse/sparsetools/csr.py", line 25, in <module> 
    _csr = swig_import_helper() 
    File "/home/michael/Downloads/scipy-0.11.0rc1/scipy/sparse/sparsetools/csr.py", line 17, in swig_import_helper 
    import _csr 
ImportError: No module named _csr 

Original exception was: 
Traceback (most recent call last): 
    File "setup.py", line 208, in <module> 
    setup_package() 
    File "setup.py", line 199, in setup_package 
    configuration=configuration) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/core.py", line 152, in setup 
    config = configuration() 
    File "setup.py", line 136, in configuration 
    config.add_subpackage('scipy') 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 1002, in add_subpackage 
    caller_level = 2) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 971, in get_subpackage 
    caller_level = caller_level + 1) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 908, in _get_configuration_from_setup_py 
    config = setup_module.configuration(*args) 
    File "scipy/setup.py", line 8, in configuration 
    config.add_subpackage('integrate') 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 1002, in add_subpackage 
    caller_level = 2) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 971, in get_subpackage 
    caller_level = caller_level + 1) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/misc_util.py", line 908, in _get_configuration_from_setup_py 
    config = setup_module.configuration(*args) 
    File "scipy/integrate/setup.py", line 10, in configuration 
    blas_opt = get_info('blas_opt',notfound_action=2) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py", line 320, in get_info 
    return cl().get_info(notfound_action) 
    File "/usr/lib/python2.7/dist-packages/numpy/distutils/system_info.py", line 471, in get_info 
    raise self.notfounderror(self.notfounderror.__doc__) 
numpy.distutils.system_info.BlasNotFoundError: 
    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. 

Wie kann ich testen, ob dieses Modul korrekt installiert wurde?

+0

http://stackoverflow.com/questions/7496547/python-scipy-needs-blas/14541175#14541175 auch eine ähnliche Frage. Es könnte nützlich sein – AIB

Antwort

2

PyPM ist eine gute Möglichkeit, es zu installieren. Die Version ist Beta 0.10.1 und enthält alle Abhängigkeiten. Sie benötigen Active Python, um auf PyPM zuzugreifen, aber Sie sollten es einfach installieren können.

pypm install scipi 
4

Sie müssen Atlas herunterladen und installieren, wie die Ausgabe vorschlägt. Versuchen Sie danach die SciPy-Installation erneut.

Andere Option wäre apt-get install ältere Version. Dadurch werden alle Abhängigkeiten automatisch installiert. und dann installieren Sie das neuere von Hand. Dies führt zu zwei Bibliotheken auf Ihrem Computer, einer in /usr/share/pyshared am wahrscheinlichsten und einem anderen irgendwo unter /usr/local, aber Sie können sicherstellen, welcher geladen wird, indem Sie den Ladepfad des Moduls ändern.

Auch, wenn Sie --prefix=/usr/local weglassen, während neuere Version über die ältere installiert wird, wird es nur überschrieben und der Pfad Mangling wird nicht erforderlich sein.

+10

Sie benötigen wahrscheinlich 'apt-get build-dep scipy', um -dev-Pakete zu installieren, die zum Kompilieren benötigt werden. Nur "apt-get install scipy" installiert diese nicht. –

+0

@ThomasK Du verdienst einen Start für das mein guter Mann :) –

26

Mein üblicher Arbeitsablauf ist ein virtualenv zu verwenden, um eine Python-Distribution mit up-to-date-Paketen zu haben.

Innerhalb dieser Umgebung können Sie alle Pakete installieren und aktualisieren, die Sie benötigen, mit pip und ohne sudo Anrufe.

Also, wenn Sie nur SciPy brauchen (und NumPy) dies wäre:.

$ sudo apt-get install python-virtualenv python-pip 
$ sudo apt-get build-dep python-numpy python-scipy 
$ # Create virtualenv in home 
$ virtualenv .myenv 
$ # Activate the virtualenv 
$ source .myenv/bin/activate 
(myenv)$ pip install -U numpy 
(myenv)$ pip install -U scipy 

(Wenn Sie keinen Root-Zugriff haben, können Sie virtualenv und piphere wie beschrieben installieren Sie müssen jedoch die Abhängigkeiten von NumPy und SciPy.)

Sie können source .myenv/bin/activate in Ihrem .bash_profile einschließen und Ihre Shell wird immer mit dieser Umgebung beginnen. Wenn Sie requirement files verwenden, können Sie problemlos die gleichen Umgebungen auf allen Ihren Maschinen installieren und warten.

+1

Vielen Dank. Mir fehlte der Schritt "sudo apt-get build-dep python-numpy python-scipy". – JayCrossler

2
sudo apt-get install python-scipy 
+2

Obwohl dies eine Antwort ist, würde ich vorschlagen, ein wenig mehr Details zu geben. – Zyerah

+0

Nach dem Scheitern mit Pip funktioniert diese Methode für mich. – philshem

+0

3 Stunden Kopfschmerzen und schließlich hat das funktioniert. – erosenin

1

ich das gleiche Problem wie die OP habe (auf Red Hat Linux 5.7 für mich, ja, ich weiß, das ist alt) und alle durch die Installation des ATLAS-Header festgelegt wurden (und „statische Libs“, sagt sie) über:

yum install atlas-devel 
16

Hatte das gleiche Problem.Die folgenden für mich gearbeitet:

sudo apt-get install libblas-dev 
sudo apt-get install liblapack-dev 
sudo apt-get install gfortran 
+0

Darf ich fragen, wie Sie herausgefunden haben, dass diese Pakete das Problem lösen? Danke –

+0

Dr. Google, aus dem Gedächtnis. –

0

Für Fedora 20:

pip install virtualenv virtualenvwrapper 
mkvirtualenv scipy_project 
sudo yum-buildep scipy 
pip install scipy 

Ich hoffe, es hilft!