[MacPorts] #49895: py27-scipy @0.16.1_0 +gcc5 +atlas completes install, but doesn't work: symbol not found
#49895: py27-scipy @0.16.1_0 +gcc5 +atlas completes install, but doesn't work: symbol not found ------------------------------+-------------------------------- Reporter: mark.chilenski@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Keywords: | Port: py27-scipy atlas ------------------------------+-------------------------------- I have installed py27-scipy @0.16.1_0 +gcc5 +atlas and atlas @3.10.2_2 +gcc5. Both packages seem to have installed with no visible errors, but when I try to use scipy.linalg, the following exception occurs: {{{
import scipy.linalg Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7 /site-packages/scipy/linalg/__init__.py", line 172, in <module> from .misc import * File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7 /site-packages/scipy/linalg/misc.py", line 6, in <module> from .lapack import get_lapack_funcs File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7 /site-packages/scipy/linalg/lapack.py", line 356, in <module> from scipy.linalg import _flapack ImportError: dlopen(/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7 /site-packages/scipy/linalg/_flapack.so, 2): Symbol not found: _cgegv_ Referenced from: /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7 /site-packages/scipy/linalg/_flapack.so Expected in: flat namespace in /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7 /site-packages/scipy/linalg/_flapack.so }}}
Possibly relevant: _cgegv_ appears to be listed as Undefined in _flapack.so: {{{ $ nm /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7 /site-packages/scipy/linalg/_flapack.so | grep _cgegv_ U _cgegv_ }}} Is it possible that there is a mis-match between the MacPorts versions of SciPy and ATLAS? Or is something messed up in the build/linking step that causes _cgegv_ to not be found? For reference, I am running OS X 10.11.1 El Capitan and MacPorts 2.3.4. Thank you for your attention to this matter! -- Ticket URL: <https://trac.macports.org/ticket/49895> MacPorts <https://www.macports.org/> Ports system for OS X
#49895: py27-scipy @0.16.1_0 +gcc5 +atlas completes install, but doesn't work: symbol not found -------------------------------+-------------------------------- Reporter: mark.chilenski@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: py27-scipy atlas | -------------------------------+-------------------------------- Changes (by ryandesign@…): * cc: openmaintainer@… (removed) -- Ticket URL: <https://trac.macports.org/ticket/49895#comment:1> MacPorts <https://www.macports.org/> Ports system for OS X
#49895: py27-scipy @0.16.1_0 +gcc5 +atlas completes install, but doesn't work: symbol not found -------------------------------+-------------------------------- Reporter: mark.chilenski@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: py27-scipy atlas | -------------------------------+-------------------------------- Comment (by mark.chilenski@…): Upon further investigation, this issue appears to be from LAPACK being updated to lapackversion = 3.6.0 when building ATLAS. I made a local version of the portfile and dialed LAPACK back to 3.5.0 and SciPy appears to work now (though I'm waiting for the full test suite to complete). The changelog here: http://www.netlib.org/lapack/lapack-3.6.0.html notes that CGEGV is deprecated as of LAPACK 3.6.0. I suspect this means that the bug is in SciPy itself (i.e., that they shouldn't be referencing a deprecated function). If the maintainers agree with this logic, this ticket can be closed and I will submit a bug report with the SciPy devs. (Though perhaps they could consider adding an option to choose the LAPACK version when building ATLAS?) **For users who find this ticket looking for a short-term solution to get their SciPy to work with ATLAS**: I got it to the point that I can run "import scipy.linalg" by following the steps here: https://trac.macports.org/wiki/howto/InstallingOlderPort I just used the most recent revision ("`svn checkout https://svn.macports.org/repository/macports/trunk/dports/math/atlas`"), and modified line 15 to be "`set lapackversion 3.5.0`" and set the checksums at line 48-50 to: {{{ lapack-${lapackversion}.tgz \ rmd160 d803308ef28f3c6cffb051850823395e2cb29b6a \ sha256 9ad8f0d3f3fb5521db49f2dd716463b8fb2b6bc9dc386a9956b8c6144f726352 }}} -- Ticket URL: <https://trac.macports.org/ticket/49895#comment:2> MacPorts <https://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts