SWIG + SCIPY = Ошибка импорта в PyArray_TYPE - PullRequest
0 голосов
/ 13 октября 2010

Привет, банда, так что я написал обёртку для кода на C. Я пытаюсь преодолеть разрыв между массивами scipy и C, который, как я знаю, беспорядочный. После чистой компиляции (ну ... не считая некоторых предупреждений ...) я получаю эту проблему при загрузке модуля python-swig-c:

undefined symbol: PyArray_TYPE

Я добавил свой файл интерфейса Swig ниже - я использовал учебник swig-pythonc, чтобы написать этот материал:

%module pycimpl

%{
    #define SWIG_FILE_WITH_INIT
    #include "cimpl.h"
%}

%include "numpy.i"
%init %{
    import_array();
%}

%include "typemaps.i"

%apply (double* INPLACE_ARRAY1, int DIM1, int* INPLACE_ARRAY2, int DIM2, int* INPLACE_ARRAY3, int DIM3, double* INPLACE_ARRAY4, int DIM4, double* OUTPUT) { (double a[], int adim, int rowidx[], int rowidxdim, int colstr[], int colstrdim, double x[], int xdim, double* zeta) }

double cimpl(double a[], int adim, int ridx[], int ridxdim, int cstr[], int cstrdim, double x[], int xdim, double* zeta);

%include "cimpl.h"

Любая помощь будет принята с благодарностью!

ура!

кт

1 Ответ

0 голосов
/ 26 марта 2011

Почему бы вам не использовать ctypes или pyrex / cython вместо SWIG?(см. Python: SWIG против ctypes )

...