34

I'm currently following the tutorial Installing the SciPy Stack to install SciPy on Ubuntu 12.04 (Precise Pangolin) (I can't use apt-get install because I need a recent version).

However, I get errors when I do the following commands:

python setup.py build sudo python setup.py install --prefix=/usr/local # Installs to /usr/local python setup.py build michael@michael-laptop-ubuntu:~/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 # installs to /usr/local

michael@michael-laptop-ubuntu:~/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. 

Moreover, how do I test if this module was installed correctly?

1

8 Answers 8

28

My usual work flow is to use a virtualenv to have a Python distribution with up-to-date packages.

Within this environment you can than install and update all packages you need with pip and without any sudo calls.

So if you only need SciPy (and NumPy) this would be:

$ 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 

(If you don't have root access, you can install virtualenv and pip as described here. However, you need the dependencies of NumPy and SciPy.)

You can include source .myenv/bin/activate in your .bash_profile and your shell will always start with that environment. If you use requirement files it is easy to install and maintain the same environments on all your machines.

Sign up to request clarification or add additional context in comments.

1 Comment

Thanks much. I was missing the "sudo apt-get build-dep python-numpy python-scipy" step.
19

Had the same problem. The following worked for me:

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

3 Comments

May I ask how did you figured out that those packages solves the problem? Thanks
Dr Google, from memory.
these aren't MKL though?
4

You need to download and install Atlas as the output suggests. After that, retry the SciPy installation.

Other option would be apt-get install older version. This will auto-install all the dependencies; and then install the newer one by hand. This will result in two libraries on your machine, one in /usr/share/pyshared most likely and another one somewhere under /usr/local, but you can make sure which one is loaded by altering the module loading path.

Also, if you will ommit --prefix=/usr/local, while installing newer version on top of older one, it will just get overwritten and the path mangling won't be required.

1 Comment

You probably need apt-get build-dep scipy to install -dev packages that are required to compile it. Just apt-get install scipy won't install those.
3

You're trying to build SciPy from source.

If you just want to install SciPy, use this command:

sudo apt-get install python-scipy 

1 Comment

Though this is an answer, I would suggest giving a little more detail.
1

PyPM is a good way to install it. The version is beta 0.10.1 and it includes all of the dependencies. You need Active Python to access PyPM, but that you should be able to install easily.

pypm install scipi 

1 Comment

PyPM is obsolete
1

I had the same problem as the OP (on Red Hat Linux 5.7 for me; yes, I know that's old) and all was fixed by installing the ATLAS headers (and "static libs", it says) via:

 yum install atlas-devel 

Comments

1

For Ubuntu 20.04 on Raspberry Pi 4, Use following:

sudo apt-get install libblas3 liblapack3 liblapack-dev libblas-dev gfortran libatlas-base-dev 

and then use pip to install latest packages.

pip install scipy 

Comments

0

For Fedora 20:

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

I hope it helps!

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.