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