2016-08-21 226 views
0

我正在嘗試編譯numpy C api和setuptools的擴展。代碼編譯罰款,但蟒蛇運行它時,我得到:鏈接numpy擴展

ImportError: ./_pyav.so: undefined symbol: PyArray_SimpleNewFromData 

我setup.py看起來大致如下:

import numpy 
from setuptools import setup, Extension 
... 
d=[] 
... 
d.append(numpy.get_include()) 
... 
Extension("_pyav",sources=["pyav.i","pyav.c"],include_dirs=d,extra_compile_args=c,extra_link_args=l,libraries=lib,swig_opts=s) 

顯然,鏈接器不包括numpy的C API對象放入生成的.so文件中。

我在哪裏獲得「extra_link_args」(如「-L ..」)和「庫」(即鏈接器開關「-llibraryname」)的內容,以便鏈接器可以找到它們?

我試着用numpy.distutils。*搞混,但是沒有找到任何東西。

回答

0

我傻,

我已經忘了「的#include 「numpy的/ arrayobject.h」。