Swig:要么缺少/bits/c++config.h,要么找不到包含

时间:2018-01-31 18:49:23

标签: python c++ swig

我有很大的烦恼。 我想用C ++编写一个库来包含它并将它用作python扩展。 问题是,当我使用以下命令时,swig会抱怨它无法找到的其他包含:

swig -python -Isrc myModule.i

输出如下:

Error: unable to find 'forward_list'

以及我的界面文件中指定的更多内容:

/* file: myModule.i */
%module myModule
%{
#include <forward_list>
#include <string>
#include <set>
#include "myModule.h"
%}

%include "myModule.h"
%include <forward_list>
%include <string>
%include <set>

我按照说明合并了其他目录并使用了以下命令:

swig -python -I/usr/include/c++/5 -Isrc myModule.h

然后swig抱怨

中缺少文件
/usr/include/c++/5/bits

例如c ++ config.h。我安装了c ++ - multilib和g ++ - multilib。 但是,这些软件包已安装到另一个目录:

/usr/include/x86_64-linux-gnu/c++/5/bits

所以我现在可以决定,如果我想通过为这些指定-I来找到必要的文件,或者能够找到位于另一个文件夹中的包含。 我能做什么或者更确切地说,我做错了什么?

1 个答案:

答案 0 :(得分:0)

似乎我只是简单地在命令中添加$result = mysqli_query($con,"UPDATE prefeitura SET solucionado = '$resposta' WHERE ID = '$emp_id';"); 选项。这显然让swig知道它是c ++代码。有关-c++的错误消息已经消失。