[SciPy-User] site.cfg problems : scipy can't find BLAS

josef.pktd at gmail.com josef.pktd at gmail.com
Thu Apr 8 14:36:07 EDT 2010


On Thu, Apr 8, 2010 at 8:38 AM, John Reid <j.reid at mail.cryst.bbk.ac.uk> wrote:
> Hi,
>
> I'm trying to build numpy and scipy from the latest svn source. I have
> followed the instructions in site.cfg.example to configure my own
> site.cfg and I'm using the same site.cfg for both numpy and scipy. numpy
> builds and installs fine and the tests pass. scipy won't build and
> throws out lots of warnings about the BLAS libraries and source. I have
> GotoBLAS2 installed in /usr/local/lib but it doesn't seem to find it.
>
> Here is my site.cfg:
> # Defaults
> # ========
> # The settings given here will apply to all other sections if not
> overridden.
> # This is a good place to add general library and include directories like
> # /usr/local/{lib,include}
> #
> [DEFAULT]
> library_dirs =
> /usr/local/lib:/home/john/local/src/SuiteSparse-3.4.0/UMFPACK/Lib:/home/john/local/src/SuiteSparse-3.4.0/AMD/Lib
> include_dirs =
> /usr/local/include:/home/john/local/src/SuiteSparse-3.4.0/AMD/Include:/home/john/local/src/SuiteSparse-3.4.0/UMFPACK/Include

I don't know Linux nor gotblas, but I think that here you are telling
numpy distutils that all libraries and include are under AMD and
UMFPACK
So, it will look for the Blas libraries in these directories.
If your blas libraries are somewhere else, you need to specify the
correct library and include_dirs

(in my site.cfg on Windows XP I left these commented out, because
everything is in python lib)

Josef

>
> # Optimized BLAS and LAPACK
> # -------------------------
> # Use the blas_opt and lapack_opt sections to give any settings that are
> # required to link against your chosen BLAS and LAPACK, including the
> regular
> # FORTRAN reference BLAS and also ATLAS. Some other sections still exist for
> # linking against certain optimized libraries (e.g. [atlas],
> [lapack_atlas]),
> # however, they are now deprecated and should not be used.
> #
> # These are typical configurations for ATLAS (assuming that the library and
> # include directories have already been set in [DEFAULT]; the include
> directory
> # is important for the BLAS C interface):
> #
> [blas_opt]
> libraries = goto2_penrynp-r1.13
> #
> [lapack_opt]
> libraries = goto2_penrynp-r1.13
> #
> # If your ATLAS was compiled with pthreads, the names of the libraries
> might be
> # different:
> #
> #[blas_opt]
> #libraries = ptf77blas, ptcblas, atlas
> #
> #[lapack_opt]
> #libraries = lapack, ptf77blas, ptcblas, atlas
>
> # UMFPACK
> # -------
> # The UMFPACK library is used to factor large sparse matrices. It, in turn,
> # depends on the AMD library for reordering the matrices for better
> performance.
> # Note that the AMD library has nothing to do with AMD (Advanced Micro
> Devices),
> # the CPU company.
> #
> #   http://www.cise.ufl.edu/research/sparse/umfpack/
> #   http://www.cise.ufl.edu/research/sparse/amd/
> #
> #[amd]
> amd_libs = amd
> #
> #[umfpack]
> umfpack_libs = umfpack
>
>
>
>
>
> and here are the errors from "python2.5 setup.py build" for scipy:
>
> Warning: No configuration returned, assuming unavailable.blas_opt_info:
> blas_mkl_info:
>   libraries mkl,vml,guide not found in /usr/local/lib
>   libraries mkl,vml,guide not found in
> /home/john/local/src/SuiteSparse-3.4.0/UMFPACK/Lib
>   libraries mkl,vml,guide not found in
> /home/john/local/src/SuiteSparse-3.4.0/AMD/Lib
>   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
> /home/john/local/src/SuiteSparse-3.4.0/UMFPACK/Lib
>   libraries ptf77blas,ptcblas,atlas not found in
> /home/john/local/src/SuiteSparse-3.4.0/AMD/Lib
>   NOT AVAILABLE
>
> atlas_blas_info:
>   libraries f77blas,cblas,atlas not found in /usr/local/lib
>   libraries f77blas,cblas,atlas not found in
> /home/john/local/src/SuiteSparse-3.4.0/UMFPACK/Lib
>   libraries f77blas,cblas,atlas not found in
> /home/john/local/src/SuiteSparse-3.4.0/AMD/Lib
>   NOT AVAILABLE
>
> /usr/lib/python2.5/site-packages/numpy/distutils/system_info.py:1399:
> 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
> /home/john/local/src/SuiteSparse-3.4.0/UMFPACK/Lib
>   libraries blas not found in
> /home/john/local/src/SuiteSparse-3.4.0/AMD/Lib
>   NOT AVAILABLE
>
> /usr/lib/python2.5/site-packages/numpy/distutils/system_info.py:1408:
> 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.5/site-packages/numpy/distutils/system_info.py:1411:
> 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 160, in <module>
>     setup_package()
>   File "setup.py", line 152, in setup_package
>     configuration=configuration )
>   File "/usr/lib/python2.5/site-packages/numpy/distutils/core.py", line
> 152, in setup
>     config = configuration()
>   File "setup.py", line 118, in configuration
>     config.add_subpackage('scipy')
>   File "/usr/lib/python2.5/site-packages/numpy/distutils/misc_util.py",
> line 972, in add_subpackage
>     caller_level = 2)
>   File "/usr/lib/python2.5/site-packages/numpy/distutils/misc_util.py",
> line 941, in get_subpackage
>     caller_level = caller_level + 1)
>   File "/usr/lib/python2.5/site-packages/numpy/distutils/misc_util.py",
> line 878, 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.5/site-packages/numpy/distutils/misc_util.py",
> line 972, in add_subpackage
>     caller_level = 2)
>   File "/usr/lib/python2.5/site-packages/numpy/distutils/misc_util.py",
> line 941, in get_subpackage
>     caller_level = caller_level + 1)
>   File "/usr/lib/python2.5/site-packages/numpy/distutils/misc_util.py",
> line 878, 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.5/site-packages/numpy/distutils/system_info.py", line
> 310, in get_info
>     return cl().get_info(notfound_action)
>   File
> "/usr/lib/python2.5/site-packages/numpy/distutils/system_info.py", line
> 461, 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.
>
>
> Can anyone tell me what I'm doing wrong?
>
> Thanks,
> John.
>
> _______________________________________________
> SciPy-User mailing list
> SciPy-User at scipy.org
> http://mail.scipy.org/mailman/listinfo/scipy-user
>



More information about the SciPy-User mailing list