[MacPorts] #39217: py27-numpy @1.7.1_0: import fails due to missing symbol

MacPorts noreply at macports.org
Thu May 23 17:57:20 PDT 2013


#39217: py27-numpy @1.7.1_0: import fails due to missing symbol
-------------------------+--------------------------------
 Reporter:  jdgleeson@…  |      Owner:  macports-tickets@…
     Type:  defect       |     Status:  new
 Priority:  Normal       |  Milestone:
Component:  ports        |    Version:  2.1.3
 Keywords:               |       Port:  py27-numpy
-------------------------+--------------------------------
 I've used `py27-numpy @1.7.1_0+atlas+gcc47` since mid April with no
 problems. After I forced an upgrade a couple days ago I get this traceback
 when I import numpy:

 {{{
 $ python
 Python 2.7.5 (default, May 20 2013, 21:30:50)
 [GCC 4.0.1 (Apple Inc. build 5493)] on darwin
 Type "help", "copyright", "credits" or "license" for more information.
 >>> import numpy
 Traceback (most recent call last):
   File "<stdin>", line 1, in <module>
   File
 "/opt47/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7
 /site-packages/numpy/__init__.py", line 137, in <module>
     import add_newdocs
   File
 "/opt47/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7
 /site-packages/numpy/add_newdocs.py", line 9, in <module>
     from numpy.lib import add_newdoc
   File
 "/opt47/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7
 /site-packages/numpy/lib/__init__.py", line 4, in <module>
     from type_check import *
   File
 "/opt47/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7
 /site-packages/numpy/lib/type_check.py", line 8, in <module>
     import numpy.core.numeric as _nx
   File
 "/opt47/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7
 /site-packages/numpy/core/__init__.py", line 5, in <module>
     import multiarray
 ImportError:
 dlopen(/opt47/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7
 /site-packages/numpy/core/multiarray.so, 2): Symbol not found: restGPRx
   Referenced from:
 /opt47/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7
 /site-packages/numpy/core/multiarray.so
   Expected in: dynamic lookup
 }}}

 This library has the missing symbol:
 {{{
 $ nm /opt47/local/lib/gcc47/libgcc_s.1.dylib | grep restGPRx
 00005f98 t restGPRx
 }}}
 but `multiarray.so` does not link with it:
 {{{
 jdgleeson at Archimedes:~$ otool -L
 /opt47/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7
 /site-packages/numpy/core/multiarray.so
 /opt47/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7
 /site-packages/numpy/core/multiarray.so:
         /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current
 version 1.0.0)
         /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
 version 111.1.7)
 }}}

 I noted in the log file that `gcc-4.0` is used to create the extension
 libraries (but the source is compiled with `gcc-mp-4.7`). I have the `port
 -d` output from the April build of numpy, and it confirms that the
 extension libraries were built with `gcc-mp-4.7`, not `gcc-4.0`, at that
 time.

 I've attached the log file from the recent build of numpy.

-- 
Ticket URL: <https://trac.macports.org/ticket/39217>
MacPorts <http://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list