SWIG:%忽略不断给出"Syntax error in input(1)"

SWIG: %ignore keeps giving "Syntax error in input(1)"

本文关键字:error Syntax in input SWIG      更新时间:2023-10-16

如果这个问题很傻,请原谅,但我找不到一个在网络上使用%ignore的好例子。我正试图使用以下命令为C++代码生成一个python包装器:

swig -python -c++ sample.i

我有一个如下的接口文件:

%module sample
%{
#include <file1.h>
#include <file2.h>
%}
%ignore vprint
%include <file1.h>
%include <file2.h>
%include <file3.h>

我试图排除在file1.h中定义的vprint函数,因为它接受了一个va_list作为参数,SWIG不支持它的包装。当我包含%ignore语句时,我会得到一个错误,说明"输入中的语法错误(1)"。如果没有它,我会得到一个正常的错误,告诉我我无法包装我试图忽略的函数。为什么会出现这种错误?提前感谢!

您肯定需要在%ignore:后面加一个分号

%ignore vprint;