在界面文件中。我已经包含了一个头文件。在那个头文件中有很多头文件,但是来自顶层树基但是在Swig中无法识别那些
例如:
main.h
#include<dir/second.h>
#define PAGE 1
Swig无法解析头文件中的dir
答案 0 :(得分:4)
答案 1 :(得分:1)
SWIG通常不会递归处理#include文件。原因是您不希望SWIG处理每个系统头文件。你可以用-includeall
覆盖它,但这可能不是你想要的。相反,请考虑以下包含文件:
#include <stdio.h>
#include <stdlib.h>
#include "b.h"
#include "c.h"
为此,如果希望公开a.h,b.h和c.h中的声明,但不希望处理系统头文件,请使用以下.i文件:
%module example
%{
#include "a.h"
%}
%include "a.h"
%include "b.h"
%include "c.h"