Swig错误 - 错误:输入中的语法错误(2)

时间:2016-08-12 04:24:55

标签: python c++ swig

我一直在尝试为c ++库创建一个python包装器。 Swig为这段代码提供了一个错误,我不明白导致错误的原因。我也是使用swig的新手。它给我的错误是“输入(2)中的语法错误”,这也是代码部分。

typedef void (__cdecl *TSI_FUNCTION_CAMERA_CONTROL_CALLBACK) (int ctl_event, void*context);
typedef void (__cdecl *TSI_FUNCTION_CAMERA_CONTROL_CALLBACK_EX)  (int  ctl_event,      TSI_FUNCTION_CAMERA_CONTROL_INFO *ctl_event_info, void *context);
typedef void (__cdecl *TSI_FUNCTION_IMAGE_NOTIFICATION_CALLBACK) (int  notification,   void *context);
typedef void (__cdecl *TSI_FUNCTION_IMAGE_CALLBACK)  (TsiImage *tsi_image, void *context);
typedef void (__cdecl *TSI_TEXT_CALLBACK_FUNCTION)  (char     *str,           void *context);

1 个答案:

答案 0 :(得分:1)

SWIG不了解__cdecl。您可能需要添加`%include" windows.i"到你的接口文件。您可能有其他未定义的符号,但是根据您提供的信息我无法分辨。

%module example
%{
  #include "example_if.h"
%}
...
# Here it must be present
%include "windows.i"
...
%include "example_if.h"