swig jni问题

时间:2010-06-08 08:22:11

标签: java-native-interface swig

我正在尝试将swig工具用于我的“.c”文件。

我运行以下命令,

$swig -java example.i 

$gcc -c example.c example_wrap.c -I/c/jdk1.3.1/include -I/c/jdk1.3.1/include/win32

然后我收到了以下错误。

 example_wrap.c:135:17: error: jni.h: No such file or directory

 example_wrap.c:159: error: expected ‘)’ before ‘*’ token

 example_wrap.c:201: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘Java_exampleJNI_My_1variable_1set’

 example_wrap.c:211: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘JNICALL’

 example_wrap.c:223: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘JNICALL’

 example_wrap.c:237: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘JNICALL’

 example_wrap.c:253: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘JNICALL’

将会找到jni.h的位置。以及如何指定包含该路径的路径。

1 个答案:

答案 0 :(得分:0)

你真的在使用JDK 1.3吗?这是一个非常古老的版本。

在我的系统上找到它的位置:/usr/lib/jvm/java-6-sun-1.6.0.20/include/jni.h所以我你已经完成了什么够了......也许这个旧的JDK或你的安装有问题吗?