[Numpy-discussion] import numpy fails with multiarray.so: undefined symbol: PyUnicodeUCS2_FromUnicode
Travis E. Oliphant
Thu Jul 24 07:06:19 CDT 2008
> I have installed the svn version of numpy. I have deleted all previous versions
> of and files related to numpy prior to installing. I also have tried
> reinstalling python from source. Regardless, when I try import numpy, I get the
> Python 2.5.2 (r252:60911, Jul 23 2008, 23:54:29)
> [GCC 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)] on linux2
> Type "help", "copyright", "credits" or "license" for more information.
> import numpy
> Traceback (most recent call last):
> File "<stdin>", line 1, in <module>
> File "/usr/local/lib/python2.5/site-packages/numpy/__init__.py", line 93, in
> import add_newdocs
> File "/usr/local/lib/python2.5/site-packages/numpy/add_newdocs.py", line 9,
> in <module>
> from lib import add_newdoc
> File "/usr/local/lib/python2.5/site-packages/numpy/lib/__init__.py", line 4,
> in <module>
> from type_check import *
> File "/usr/local/lib/python2.5/site-packages/numpy/lib/type_check.py", line
> 8, in <module>
> import numpy.core.numeric as _nx
> File "/usr/local/lib/python2.5/site-packages/numpy/core/__init__.py",
> line 5, in <module>
> import multiarray
> ImportError: /usr/local/lib/python2.5/site-packages/numpy/core/multiarray.so:
> undefined symbol: PyUnicodeUCS2_FromUnicode
This symbol is defined by Python when you build Python with 16-bit
unicode support (as opposed to 32-bit) unicode support.
Somehow numpy is picking up the 16-bit headers but you probably compiled
with ucs4. NumPy supports both UCS2 and UCS4 builds.
This looks to me like a Python header installation problem. There are
probably some incorrect Python headers being picked up during
compilation of NumPy.
Can you double check which Python headers are being used (look at the -I
lines when NumPy is being built).
More information about the Numpy-discussion