Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Scipy fails to build with ATLAS #22047

Closed
jdemeyer opened this issue Dec 11, 2016 · 16 comments
Closed

Scipy fails to build with ATLAS #22047

jdemeyer opened this issue Dec 11, 2016 · 16 comments

Comments

@jdemeyer
Copy link

If Sage is configured with ./configure --with-blas=atlas, then scipy fails to build:

[scipy-0.17.1.p0] Found local metadata for scipy-0.17.1.p0
[scipy-0.17.1.p0] Using cached file /usr/local/src/sage-git/upstream/scipy-0.17.1.tar.gz
[scipy-0.17.1.p0] scipy-0.17.1.p0
[scipy-0.17.1.p0] ====================================================
[scipy-0.17.1.p0] Setting up build directory for scipy-0.17.1.p0
[scipy-0.17.1.p0] Finished extraction
[scipy-0.17.1.p0] No patch files found in ../patches
[scipy-0.17.1.p0] ****************************************************
[scipy-0.17.1.p0] Host system:
[scipy-0.17.1.p0] Linux tamiyo 3.17.7-gentoo #1 SMP PREEMPT Wed Dec 31 20:06:39 CET 2014 x86_64 Intel(R) Core(TM) i7-2640M CPU @ 2.80GHz GenuineIntel GNU/Linux
[scipy-0.17.1.p0] ****************************************************
[scipy-0.17.1.p0] C compiler: gcc
[scipy-0.17.1.p0] C compiler version:
[scipy-0.17.1.p0] Using built-in specs.
[scipy-0.17.1.p0] COLLECT_GCC=/usr/x86_64-pc-linux-gnu/gcc-bin/4.9.4/gcc
[scipy-0.17.1.p0] COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/4.9.4/lto-wrapper
[scipy-0.17.1.p0] Target: x86_64-pc-linux-gnu
[scipy-0.17.1.p0] Configured with: /var/tmp/portage/sys-devel/gcc-4.9.4/work/gcc-4.9.4/configure --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/4.9.4 --includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.4/include --datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.9.4 --mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.9.4/man --infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.9.4/info --with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.4/include/g++-v4 --with-python-dir=/share/gcc-data/x86_64-pc-linux-gnu/4.9.4/python --enable-languages=c,c++,fortran --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --enable-nls --without-included-gettext --enable-checking=release --with-bugurl=https://bugs.gentoo.org/ --with-pkgversion='Gentoo 4.9.4 p1.0, pie-0.6.4' --enable-libstdcxx-time --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --enable-multilib --with-multilib-list=m32,m64 --disable-altivec --disable-fixed-point --enable-targets=all --disable-libgcj --enable-libgomp --disable-libmudflap --disable-libssp --disable-libcilkrts --enable-vtable-verify --enable-libvtv --enable-lto --without-cloog --enable-libsanitizer
[scipy-0.17.1.p0] Thread model: posix
[scipy-0.17.1.p0] gcc version 4.9.4 (Gentoo 4.9.4 p1.0, pie-0.6.4) 
[scipy-0.17.1.p0] ****************************************************
[scipy-0.17.1.p0] Note: CFLAGS, CXXFLAGS and SHAREDFLAGS are taken from distutils,
[scipy-0.17.1.p0]       so their current settings are ignored.
[scipy-0.17.1.p0] /usr/local/src/sage-git/local/lib/python/distutils/dist.py:267: UserWarning: Unknown distribution option: 'install_requires'
[scipy-0.17.1.p0]   warnings.warn(msg)
[scipy-0.17.1.p0] /usr/local/src/sage-git/local/lib/python/distutils/dist.py:267: UserWarning: Unknown distribution option: 'setup_requires'
[scipy-0.17.1.p0]   warnings.warn(msg)
[scipy-0.17.1.p0] /usr/local/src/sage-git/local/lib/python/distutils/dist.py:267: UserWarning: Unknown distribution option: 'test_suite'
[scipy-0.17.1.p0]   warnings.warn(msg)
[scipy-0.17.1.p0] Installing package scipy using pip
[scipy-0.17.1.p0] Ignoring indexes: https://pypi.python.org/simple
[scipy-0.17.1.p0] Processing /usr/local/src/sage-git/local/var/tmp/sage/build/scipy-0.17.1.p0/src
[scipy-0.17.1.p0]   Running setup.py (path:/tmp/pip-lnNxdH-build/setup.py) egg_info for package from file:///usr/local/src/sage-git/local/var/tmp/sage/build/scipy-0.17.1.p0/src
[scipy-0.17.1.p0]     Running command python setup.py egg_info
[scipy-0.17.1.p0]     running egg_info
[scipy-0.17.1.p0]     creating pip-egg-info/scipy.egg-info
[scipy-0.17.1.p0]     writing pip-egg-info/scipy.egg-info/PKG-INFO
[scipy-0.17.1.p0]     writing top-level names to pip-egg-info/scipy.egg-info/top_level.txt
[scipy-0.17.1.p0]     writing dependency_links to pip-egg-info/scipy.egg-info/dependency_links.txt
[scipy-0.17.1.p0]     writing manifest file 'pip-egg-info/scipy.egg-info/SOURCES.txt'
[scipy-0.17.1.p0]     warning: manifest_maker: standard file '-c' not found
[scipy-0.17.1.p0] 
[scipy-0.17.1.p0]     reading manifest file 'pip-egg-info/scipy.egg-info/SOURCES.txt'
[scipy-0.17.1.p0]     reading manifest template 'MANIFEST.in'
[scipy-0.17.1.p0]     warning: no previously-included files matching '*_subr_*.f' found under directory 'scipy/linalg/src/id_dist/src'
[scipy-0.17.1.p0]     no previously-included directories found matching 'benchmarks/env'
[scipy-0.17.1.p0]     no previously-included directories found matching 'benchmarks/results'
[scipy-0.17.1.p0]     no previously-included directories found matching 'benchmarks/html'
[scipy-0.17.1.p0]     no previously-included directories found matching 'benchmarks/scipy'
[scipy-0.17.1.p0]     no previously-included directories found matching 'scipy/special/tests/data/boost'
[scipy-0.17.1.p0]     no previously-included directories found matching 'scipy/special/tests/data/gsl'
[scipy-0.17.1.p0]     no previously-included directories found matching 'doc/build'
[scipy-0.17.1.p0]     no previously-included directories found matching 'doc/source/generated'
[scipy-0.17.1.p0]     no previously-included directories found matching '*/__pycache__'
[scipy-0.17.1.p0]     warning: no previously-included files matching '*~' found anywhere in distribution
[scipy-0.17.1.p0]     warning: no previously-included files matching '*.bak' found anywhere in distribution
[scipy-0.17.1.p0]     warning: no previously-included files matching '*.swp' found anywhere in distribution
[scipy-0.17.1.p0]     warning: no previously-included files matching '*.pyo' found anywhere in distribution
[scipy-0.17.1.p0]     writing manifest file 'pip-egg-info/scipy.egg-info/SOURCES.txt'
[scipy-0.17.1.p0]   Source in /tmp/pip-lnNxdH-build has version 0.17.1, which satisfies requirement scipy==0.17.1 from file:///usr/local/src/sage-git/local/var/tmp/sage/build/scipy-0.17.1.p0/src
[scipy-0.17.1.p0] Installing collected packages: scipy
[scipy-0.17.1.p0]   Running setup.py install for scipy: started
[scipy-0.17.1.p0]     Running command /usr/local/src/sage-git/local/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-lnNxdH-build/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-TjA2nI-record/install-record.txt --single-version-externally-managed --compile
[scipy-0.17.1.p0]     lapack_opt_info:
[scipy-0.17.1.p0]     openblas_lapack_info:
[scipy-0.17.1.p0]     Disabled openblas_lapack_info: (OPENBLAS is None)
[scipy-0.17.1.p0]       libraries openblas not found in []
[scipy-0.17.1.p0]       NOT AVAILABLE
[scipy-0.17.1.p0] 
[scipy-0.17.1.p0]     lapack_mkl_info:
[scipy-0.17.1.p0]     mkl_info:
[scipy-0.17.1.p0]       libraries mkl,vml,guide not found in ['/usr/local/src/sage-git/local/lib', '/usr/local/lib64', '/usr/local/lib', '/usr/lib64', '/usr/lib', '/usr/lib/']
[scipy-0.17.1.p0]       NOT AVAILABLE
[scipy-0.17.1.p0] 
[scipy-0.17.1.p0]       NOT AVAILABLE
[scipy-0.17.1.p0] 
[scipy-0.17.1.p0]     atlas_3_10_threads_info:
[scipy-0.17.1.p0]     Disabled atlas_3_10_threads_info: (PTATLAS is None)
[scipy-0.17.1.p0]     <class 'numpy.distutils.system_info.atlas_3_10_threads_info'>
[scipy-0.17.1.p0]       NOT AVAILABLE
[scipy-0.17.1.p0] 
[scipy-0.17.1.p0]     atlas_3_10_info:
[scipy-0.17.1.p0]     Disabled atlas_3_10_info: (ATLAS is None)
[scipy-0.17.1.p0]     <class 'numpy.distutils.system_info.atlas_3_10_info'>
[scipy-0.17.1.p0]       NOT AVAILABLE
[scipy-0.17.1.p0] 
[scipy-0.17.1.p0]     atlas_threads_info:
[scipy-0.17.1.p0]     Disabled atlas_threads_info: (PTATLAS is None)
[scipy-0.17.1.p0]     <class 'numpy.distutils.system_info.atlas_threads_info'>
[scipy-0.17.1.p0]       NOT AVAILABLE
[scipy-0.17.1.p0] 
[scipy-0.17.1.p0]     atlas_info:
[scipy-0.17.1.p0]     Disabled atlas_info: (ATLAS is None)
[scipy-0.17.1.p0]     <class 'numpy.distutils.system_info.atlas_info'>
[scipy-0.17.1.p0]       NOT AVAILABLE
[scipy-0.17.1.p0] 
[scipy-0.17.1.p0]     /usr/local/src/sage-git/local/lib/python2.7/site-packages/numpy/distutils/system_info.py:1548: UserWarning:
[scipy-0.17.1.p0]         Atlas (http://math-atlas.sourceforge.net/) libraries not found.
[scipy-0.17.1.p0]         Directories to search for the libraries can be specified in the
[scipy-0.17.1.p0]         numpy/distutils/site.cfg file (section [atlas]) or by setting
[scipy-0.17.1.p0]         the ATLAS environment variable.
[scipy-0.17.1.p0]       warnings.warn(AtlasNotFoundError.__doc__)
[scipy-0.17.1.p0]     lapack_info:
[scipy-0.17.1.p0]       libraries lapack not found in ['', '']
[scipy-0.17.1.p0]     Runtime library lapack was not found. Ignoring
[scipy-0.17.1.p0]       FOUND:
[scipy-0.17.1.p0]         libraries = ['lapack', 'f77blas', 'cblas', 'atlas', 'lapack']
[scipy-0.17.1.p0]         library_dirs = ['/usr/local/src/sage-git/local/lib']
[scipy-0.17.1.p0]         language = f77
[scipy-0.17.1.p0] 
[scipy-0.17.1.p0]     blas_info:
[scipy-0.17.1.p0]       libraries cblas,atlas,f77blas,atlas not found in ['/usr/local/src/sage-git/local/lib']
[scipy-0.17.1.p0]       NOT AVAILABLE
[scipy-0.17.1.p0] 
[scipy-0.17.1.p0]     /usr/local/src/sage-git/local/lib/python2.7/site-packages/numpy/distutils/system_info.py:1571: UserWarning:
[scipy-0.17.1.p0]         Blas (http://www.netlib.org/blas/) libraries not found.
[scipy-0.17.1.p0]         Directories to search for the libraries can be specified in the
[scipy-0.17.1.p0]         numpy/distutils/site.cfg file (section [blas]) or by setting
[scipy-0.17.1.p0]         the BLAS environment variable.
[scipy-0.17.1.p0]       warnings.warn(BlasNotFoundError.__doc__)
[scipy-0.17.1.p0]     blas_src_info:
[scipy-0.17.1.p0]       NOT AVAILABLE
[scipy-0.17.1.p0] 
[scipy-0.17.1.p0]     /usr/local/src/sage-git/local/lib/python2.7/site-packages/numpy/distutils/system_info.py:1574: UserWarning:
[scipy-0.17.1.p0]         Blas (http://www.netlib.org/blas/) sources not found.
[scipy-0.17.1.p0]         Directories to search for the sources can be specified in the
[scipy-0.17.1.p0]         numpy/distutils/site.cfg file (section [blas_src]) or by setting
[scipy-0.17.1.p0]         the BLAS_SRC environment variable.
[scipy-0.17.1.p0]       warnings.warn(BlasSrcNotFoundError.__doc__)
[scipy-0.17.1.p0]       NOT AVAILABLE
[scipy-0.17.1.p0] 
[scipy-0.17.1.p0]     Running from scipy source directory.
[scipy-0.17.1.p0]     Traceback (most recent call last):
[scipy-0.17.1.p0]       File "<string>", line 1, in <module>
[scipy-0.17.1.p0]       File "/tmp/pip-lnNxdH-build/setup.py", line 265, in <module>
[scipy-0.17.1.p0]         setup_package()
[scipy-0.17.1.p0]       File "/tmp/pip-lnNxdH-build/setup.py", line 262, in setup_package
[scipy-0.17.1.p0]         setup(**metadata)
[scipy-0.17.1.p0]       File "/usr/local/src/sage-git/local/lib/python2.7/site-packages/numpy/distutils/core.py", line 135, in setup
[scipy-0.17.1.p0]         config = configuration()
[scipy-0.17.1.p0]       File "/tmp/pip-lnNxdH-build/setup.py", line 182, in configuration
[scipy-0.17.1.p0]         config.add_subpackage('scipy')
[scipy-0.17.1.p0]       File "/usr/local/src/sage-git/local/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 1003, in add_subpackage
[scipy-0.17.1.p0]         caller_level = 2)
[scipy-0.17.1.p0]       File "/usr/local/src/sage-git/local/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 972, in get_subpackage
[scipy-0.17.1.p0]         caller_level = caller_level + 1)
[scipy-0.17.1.p0]       File "/usr/local/src/sage-git/local/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 909, in _get_configuration_from_setup_py
[scipy-0.17.1.p0]         config = setup_module.configuration(*args)
[scipy-0.17.1.p0]       File "scipy/setup.py", line 15, in configuration
[scipy-0.17.1.p0]         config.add_subpackage('linalg')
[scipy-0.17.1.p0]       File "/usr/local/src/sage-git/local/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 1003, in add_subpackage
[scipy-0.17.1.p0]         caller_level = 2)
[scipy-0.17.1.p0]       File "/usr/local/src/sage-git/local/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 972, in get_subpackage
[scipy-0.17.1.p0]         caller_level = caller_level + 1)
[scipy-0.17.1.p0]       File "/usr/local/src/sage-git/local/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 909, in _get_configuration_from_setup_py
[scipy-0.17.1.p0]         config = setup_module.configuration(*args)
[scipy-0.17.1.p0]       File "scipy/linalg/setup.py", line 20, in configuration
[scipy-0.17.1.p0]         raise NotFoundError('no lapack/blas resources found')
[scipy-0.17.1.p0]     numpy.distutils.system_info.NotFoundError: no lapack/blas resources found
[scipy-0.17.1.p0]     Running setup.py install for scipy: finished with status 'error'
[scipy-0.17.1.p0] Cleaning up...
[scipy-0.17.1.p0]   Removing source in /tmp/pip-lnNxdH-build
[scipy-0.17.1.p0] Command "/usr/local/src/sage-git/local/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-lnNxdH-build/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-TjA2nI-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-lnNxdH-build/
[scipy-0.17.1.p0] Exception information:
[scipy-0.17.1.p0] Traceback (most recent call last):
[scipy-0.17.1.p0]   File "/usr/local/src/sage-git/local/lib/python2.7/site-packages/pip-8.1.2-py2.7.egg/pip/basecommand.py", line 215, in main
[scipy-0.17.1.p0]     status = self.run(options, args)
[scipy-0.17.1.p0]   File "/usr/local/src/sage-git/local/lib/python2.7/site-packages/pip-8.1.2-py2.7.egg/pip/commands/install.py", line 317, in run
[scipy-0.17.1.p0]     prefix=options.prefix_path,
[scipy-0.17.1.p0]   File "/usr/local/src/sage-git/local/lib/python2.7/site-packages/pip-8.1.2-py2.7.egg/pip/req/req_set.py", line 742, in install
[scipy-0.17.1.p0]     **kwargs
[scipy-0.17.1.p0]   File "/usr/local/src/sage-git/local/lib/python2.7/site-packages/pip-8.1.2-py2.7.egg/pip/req/req_install.py", line 880, in install
[scipy-0.17.1.p0]     spinner=spinner,
[scipy-0.17.1.p0]   File "/usr/local/src/sage-git/local/lib/python2.7/site-packages/pip-8.1.2-py2.7.egg/pip/utils/__init__.py", line 718, in call_subprocess
[scipy-0.17.1.p0]     % (command_desc, proc.returncode, cwd))
[scipy-0.17.1.p0] InstallationError: Command "/usr/local/src/sage-git/local/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-lnNxdH-build/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-TjA2nI-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-lnNxdH-build/
[scipy-0.17.1.p0] Error installing scipy.
[scipy-0.17.1.p0] 
[scipy-0.17.1.p0] real  0m2.854s
[scipy-0.17.1.p0] user  0m2.265s
[scipy-0.17.1.p0] sys   0m0.476s
[scipy-0.17.1.p0] ************************************************************************
[scipy-0.17.1.p0] Error installing package scipy-0.17.1.p0
[scipy-0.17.1.p0] ************************************************************************
[scipy-0.17.1.p0] Please email sage-devel (http://groups.google.com/group/sage-devel)
[scipy-0.17.1.p0] explaining the problem and including the relevant part of the log file
[scipy-0.17.1.p0]   /usr/local/src/sage-git/logs/pkgs/scipy-0.17.1.p0.log
[scipy-0.17.1.p0] Describe your computer, operating system, etc.
[scipy-0.17.1.p0] If you want to try to fix the problem yourself, *don't* just cd to
[scipy-0.17.1.p0] /usr/local/src/sage-git/local/var/tmp/sage/build/scipy-0.17.1.p0 and type 'make' or whatever is appropriate.
[scipy-0.17.1.p0] Instead, the following commands setup all environment variables
[scipy-0.17.1.p0] correctly and load a subshell for you to debug the error:
[scipy-0.17.1.p0]   (cd '/usr/local/src/sage-git/local/var/tmp/sage/build/scipy-0.17.1.p0' && '/usr/local/src/sage-git/sage' --sh)
[scipy-0.17.1.p0] When you are done debugging, you can type "exit" to leave the subshell.
[scipy-0.17.1.p0] ************************************************************************

CC: @kiwifb

Component: packages: standard

Author: François Bissey

Branch/Commit: b377e3e

Reviewer: Jeroen Demeyer

Issue created by migration from https://trac.sagemath.org/ticket/22047

@kiwifb
Copy link
Member

kiwifb commented Dec 11, 2016

comment:1

Content of /usr/local/src/sage-git/local/lib/python2.7/site-packages/numpy/distutils/site.cfg please.

@jdemeyer
Copy link
Author

comment:2
$ cat /usr/local/src/sage-git/local/lib/python2.7/site-packages/numpy/distutils/site.cfg
[ALL]
library_dirs = /usr/local/src/sage-git/local/lib
include_dirs = /usr/local/src/sage-git/local/include
[blas]
library_dirs = /usr/local/src/sage-git/local/lib
blas_libs    = cblas, atlas, f77blas, atlas
[lapack]
library_dirs = /usr/local/src/sage-git/local/lib
lapack_libs  = lapack, f77blas, cblas, atlas

$ pkgconf --libs blas
-lf77blas -latlas

Could this be the same issue as the breakage with -lopenblas -lopenblas that we saw in #21625?

@kiwifb
Copy link
Member

kiwifb commented Dec 11, 2016

comment:3

I am wondering yes. I am trying to reproduce locally. Can you tell me the output of pkg-config --libs blas cblas because that's what is used to populate blas. If a cblas is provided HAVE_CBLAS is defined (to a confusing value, but all that is ever checked is its existence).

@jdemeyer
Copy link
Author

comment:4
$ pkg-config --libs blas cblas
-L/usr/local/src/sage-git/local/lib -lf77blas -latlas -lcblas -latlas 

@kiwifb
Copy link
Member

kiwifb commented Dec 11, 2016

comment:5

A couple more questions readelf -d /usr/local/src/sage-git/local/lib/libf77blas.so and readelf -d /usr/local/src/sage-git/local/lib/libcblas.so I think that can solved by altering the .pc files for atlas slightly - something I think I wrote :(

@jdemeyer
Copy link
Author

comment:6

I don't understand why it matters, but here it is:

$ readelf -d /usr/local/src/sage-git/local/lib/libf77blas.so

Dynamic section at offset 0x20d98 contains 32 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libatlas.so.3]
 0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libgfortran.so.3]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgcc_s.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libquadmath.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000000e (SONAME)             Library soname: [libf77blas.so.3]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/local/src/sage-git/local/lib]
 0x000000000000000c (INIT)               0x7200
 0x000000000000000d (FINI)               0x1aca0
 0x0000000000000019 (INIT_ARRAY)         0x220d80
 0x000000000000001b (INIT_ARRAYSZ)       8 (bytes)
 0x000000000000001a (FINI_ARRAY)         0x220d88
 0x000000000000001c (FINI_ARRAYSZ)       8 (bytes)
 0x000000006ffffef5 (GNU_HASH)           0x1c8
 0x0000000000000005 (STRTAB)             0x3a60
 0x0000000000000006 (SYMTAB)             0xbf8
 0x000000000000000a (STRSZ)              5182 (bytes)
 0x000000000000000b (SYMENT)             24 (bytes)
 0x0000000000000003 (PLTGOT)             0x221000
 0x0000000000000002 (PLTRELSZ)           7776 (bytes)
 0x0000000000000014 (PLTREL)             RELA
 0x0000000000000017 (JMPREL)             0x53a0                                                                                                                         
 0x0000000000000007 (RELA)               0x52e0                                                                                                                         
 0x0000000000000008 (RELASZ)             192 (bytes)                                                                                                                    
 0x0000000000000009 (RELAENT)            24 (bytes)                                                                                                                     
 0x000000006ffffffe (VERNEED)            0x5280
 0x000000006fffffff (VERNEEDNUM)         2
 0x000000006ffffff0 (VERSYM)             0x4e9e
 0x000000006ffffff9 (RELACOUNT)          3
 0x0000000000000000 (NULL)               0x0
$ readelf -d /usr/local/src/sage-git/local/lib/libcblas.so

Dynamic section at offset 0x21dc0 contains 29 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libatlas.so.3]
 0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000000e (SONAME)             Library soname: [libcblas.so.3]
 0x000000000000001d (RUNPATH)            Library runpath: [/usr/local/src/sage-git/local/lib]
 0x000000000000000c (INIT)               0x4c60
 0x000000000000000d (FINI)               0x1c328
 0x0000000000000019 (INIT_ARRAY)         0x221da8
 0x000000000000001b (INIT_ARRAYSZ)       8 (bytes)
 0x000000000000001a (FINI_ARRAY)         0x221db0
 0x000000000000001c (FINI_ARRAYSZ)       8 (bytes)
 0x000000006ffffef5 (GNU_HASH)           0x1c8
 0x0000000000000005 (STRTAB)             0x27d0
 0x0000000000000006 (SYMTAB)             0x700
 0x000000000000000a (STRSZ)              4080 (bytes)
 0x000000000000000b (SYMENT)             24 (bytes)
 0x0000000000000003 (PLTGOT)             0x222000
 0x0000000000000002 (PLTRELSZ)           4296 (bytes)
 0x0000000000000014 (PLTREL)             RELA
 0x0000000000000017 (JMPREL)             0x3b98
 0x0000000000000007 (RELA)               0x3ac0
 0x0000000000000008 (RELASZ)             216 (bytes)
 0x0000000000000009 (RELAENT)            24 (bytes)
 0x000000006ffffffe (VERNEED)            0x3a80
 0x000000006fffffff (VERNEEDNUM)         1
 0x000000006ffffff0 (VERSYM)             0x37c0
 0x000000006ffffff9 (RELACOUNT)          3
 0x0000000000000000 (NULL)               0x0

@kiwifb
Copy link
Member

kiwifb commented Dec 11, 2016

comment:7

Properly linked. -latlas is not even needed, but I was wondering about the presence of pthreads as well. This is a Gentoo science overlay ATLAS blas .pc file

more /usr/lib64/pkgconfig/atlas-blas.pc
prefix="/usr"
exec_prefix="/usr"
libdir="/usr/lib64"
includedir="/usr/include"

Name: atlas-blas
Description: atlas atlas-blas
Version: 3.11.38
URL: http://math-atlas.sourceforge.net/
Requires: 
Requires.private: 
Conflicts: 
Libs: -L"/usr/lib64" -L${libdir} -lf77blas 
Libs.private: -L${libdir} -latlas -lm -lpthread
Cflags: -I"/usr/include" -I${includedir}/atlas

I reported stupidness about -L"/usr/lib64" -L${libdir} yesterday but the important bit is that because libatlas (and pthread when present) is properly in the NEEDED section we don't need it in Libs. We don't need to worry about OS X as we don't build ATLAS there - accelerate is used instead. The only real question is cygwin but I hope no troubles will come out of that.

@kiwifb
Copy link
Member

kiwifb commented Dec 11, 2016

comment:8

Problem reproduced and fixed. You will want another numpy bump with that?

@kiwifb
Copy link
Member

kiwifb commented Dec 12, 2016

Commit: b377e3e

@kiwifb
Copy link
Member

kiwifb commented Dec 12, 2016

Author: François Bissey

@kiwifb
Copy link
Member

kiwifb commented Dec 12, 2016

comment:9

Stuff pushed so you can try for yourself.


New commits:

b377e3estreamline atlas's blas/lapack .pc file so it doesn't choke scipy

@kiwifb
Copy link
Member

kiwifb commented Dec 12, 2016

Branch: u/fbissey/atlas_pc

@jdemeyer
Copy link
Author

comment:10

Replying to @kiwifb:

You will want another numpy bump with that?

Numpy depends on $(BLAS) so it will be rebuilt if needed.

I'll test this now.

@jdemeyer
Copy link
Author

comment:11

Works for me.

@jdemeyer
Copy link
Author

Reviewer: Jeroen Demeyer

@vbraun
Copy link
Member

vbraun commented Dec 14, 2016

Changed branch from u/fbissey/atlas_pc to b377e3e

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants