如何使用SWIG在C++ API上生成C包装器?

pio*_*kuc 16 c c++ swig

我想使用SWIG在一些C++ API上生成C包装器.

从SWIG文档SWIG和C++:

6.2方法

为了包装C++,SWIG使用分层方法来生成代码.在最低级别,SWIG生成一组程序ANSI-C样式包装器.这些包装器负责基本类型转换,类型检查,错误处理以及C++>绑定的其他低级细节.这些包装器也足以将C++绑定到支持内置过程的任何目标语言.从某种意义上说,您可以将这个包装层视为为C++提供C库接口.

但是,我没有看到任何选项来做到这一点,没有生成在Python,Ruby等语言中使用API​​的代码.我怎样才能获得C包装器?

pio*_*kuc 12

虽然SWIG的主分支无法为C++ API生成C包装器(问题中引用的SWIG文档有点误导),但在Google Summer of Code 2008期间创建了一个SWIG分支,可通过https://swig.svn获得. sourceforge.net/svnroot/swig/branches/gsoc2008-maciekd/就是这么做的.我在这里找到了答案:C++到C Wrapper使用SWIG(用于FLTK)

  • 值得注意的是,今年(2012年)还有另一个GSOC项目,如[这里]所述(http://sourceforge.net/news/?group_id=1645&id=309764).它尚未完成,但希望这次能够实现. (4认同)