码迷,mamicode.com
首页 > 其他好文 > 详细

SWIG 之一:基础入门

时间:2018-11-14 16:40:07      阅读:542      评论:0      收藏:0      [点我收藏+]

标签:类型   clu   指定   存储   pre   ons   get   基础入门   const   

1、入门概念

  SWIG支持将C/C++接口封装成其他语言形式,我这里需要转换成JNI (Java)接口。

  首先请参考:SWIG官方文档

2、编译命令

autowrapper -c++ -java -package com.kuliuheng.test -outdir ./java -o ./jni/JNI_testWrap.cpp -IE:\autoWrapper\Lib -IE:\autoWrapper\Lib\java test.i

  这里面参数含义依次为:

-c++        表示是封装C++接口,如果不带此参数则默认为C接口
-java       表示封装接口的目标语言Java,其他语言类型支持参看官方文档
-package    此参数为Java语言特有的,表示指定生成的Java包名
-outdir     指定生成的Java文件存储路径,如果不指定则默认当前目录
-o          指定生成的C++接口包装文件存储路径和目标文件名,如果不指定则默认同目录
-I          指定依赖配置文件、库文件的路径

   目前文件test.i是SWIG的配置文件,其内容大致是这样的:

/* File : test.i */
%module testModule

%{
#include "test_main.h"
%}

%nspace test::MyClass;
%nspace test::Numbers;
%nspace test::VAR_IN_TEST;
%mutable;

%javaconst (1);
%include "enumtypeunsafe.swg" 
%include "test_main.h"

 

SWIG 之一:基础入门

标签:类型   clu   指定   存储   pre   ons   get   基础入门   const   

原文地址:https://www.cnblogs.com/kuliuheng/p/9958356.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!