如何摆脱此SWIG文件中的错误

时间:2015-10-14 01:49:06

标签: python swig

我从本网站下载了以下SWIG文件,该文件提供了用于计算可见性多边形的c ++代码。我希望能够从Python调用它。请注意,包的名称拼写错误 “粘性”而不是“可见性”。

我在使用Swig 2.0和使用Python 2.7的Ubuntu 14.04上

我尝试在下面的SWIG文件中使用命令swig -python visilibity.i,并在bash提示符下出错。

/usr/share/swig2.0/python/std_common.i:73: Error: Syntax error in input(1).

我对这里的错误一无所知。我已确保头文件和.cpp文件与.i文件位于同一目录中。

%module visilibity
%{
#include "visilibity.hpp"
%}

%include std_vector.i
namespace std {
      %template(pointList) vector<VisiLibity::Point>;
      %template(polygonList) vector<VisiLibity::Polygon>;
}


%include visilibity.hpp


%extend VisiLibity::Polygon {
  Point __getitem__(unsigned i) {
    return (*self)[i];
  }
};

1 个答案:

答案 0 :(得分:5)

这是C ++代码,所以你需要告诉它swig:

swig -c++ -python visilibity.i