如何仅将 swig 与已编译的 dll 和头文件一起使用

tem*_*ema 5 c++ python dll swig wrapper

我有读取一些文档SWIG文档(与C ++代码),但不能找出是否有可能genereate Python扩展模块的情况下,我已编译的DLL(没有提供源代码)和头文件的所有功能在宣布dll。
如果有人遇到同样的问题并解决了它,你能提供一些有用的例子吗?
提前致谢。

Mar*_*nen 5

对的,这是可能的。SWIG 仅使用标头来生成包装函数。这是一个简单的 SWIG 文件:

%module mymod
%{
#include "myheader.h"
%}

%include "myheader.h"
Run Code Online (Sandbox Code Playgroud)

然后:

swig -python -c++ mymod.i
Run Code Online (Sandbox Code Playgroud)

然后将生成的代码编译并链接为 Python 扩展 DLL。您还需要在 .lib 中链接包装的 DLL。