umath import error for Numpy builds on OSX 10.6

Robert Kern robert.kern at gmail.com
Thu Dec 10 18:29:06 EST 2009


On 2009-12-10 17:09 PM, hardcoreUFO wrote:
> For the past several weeks, I have been unable to build numpy from
> source, at least nothing that works. The issue is that symbols appear
> to be missing from umath. When numpy is imported, I get the following:

You will want to ask numpy questions on the numpy mailing list:

   http://www.scipy.org/Mailing_Lists

> In [1]: import numpy
> ------------------------------------------------------------
> Traceback (most recent call last):

>    File "/Library/Python/2.6/site-packages/numpy-1.5.0.dev_20091211-
> py2.6-macosx-10.6-universal.egg/numpy/core/__init__.py", line 6, in
> <module>
>      import umath
> ImportError: dlopen(/Library/Python/2.6/site-packages/
> numpy-1.5.0.dev_20091211-py2.6-macosx-10.6-universal.egg/numpy/core/
> umath.so, 2): Symbol not found: _npy_cexp
>    Referenced from: /Library/Python/2.6/site-packages/
> numpy-1.5.0.dev_20091211-py2.6-macosx-10.6-universal.egg/numpy/core/
> umath.so
>    Expected in: flat namespace
>   in /Library/Python/2.6/site-packages/numpy-1.5.0.dev_20091211-py2.6-
> macosx-10.6-universal.egg/numpy/core/umath.so

> I think my build script is good, but here it is just incase:
>
> #!/bin/sh
> export MACOSX_DEPLOYMENT_TARGET=10.6
> export CFLAGS="-arch x86_64"
> #export FFLAGS="-arch i386 -arch x86_64"
> export FFLAGS="-arch x86_64"
> export LDFLAGS="-Wall -lgfortran -undefined dynamic_lookup -bundle -
> arch x86_64"
> rm -rf build
> python setup.py config -L/Users/fonnesbeck/Code/freetype -L/Users/
> fonnesbeck/Code/libpng build
> python setupegg.py egg_info --tag-date bdist_egg
>
> I'm at my wits end with this one, so any help at all is most
> appreciated.

Don't specify LDFLAGS if you don't have to. It is obliterating the -l flag for 
the npy_math library that numpy builds internally and tries to link with.

-- 
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma
  that is made terrible by our own mad attempt to interpret it as though it had
  an underlying truth."
   -- Umberto Eco




More information about the Python-list mailing list