2015-10-13 36 views
1

我是Swig嘗試使用Swig將基本C文件轉換爲java接口的新手。 我有一個compute.i文件:「Swig to java(Android)」:給沒有這樣的文件或目錄生成Swig到Java文件時出錯

%module compute 

%inline %{ 
extern int gcd(int x, int y); 
extern double Foo; 
%} 

和compute.c文件:

/* A global variable */ 
double Foo = 3.0; 

/* Compute the greatest common divisor of positive integers */ 
int gcd(int x, int y) { 
    int g; 
    g = y; 
    while (x > 0) { 
    g = x; 
    x = y % x; 
    y = g; 
    } 
    return g; 
} 

而且基本onCreateView方法一MainActivity。我試着用下面的命令來產生computeJNI.java:

swig -java -package com.example.swigbasicproject -outdir src/com/example/swigbasicproject/swig -o jni/compute_wrap.c jni/compute.i 

,但它給了我以下錯誤:

Unable to open file src/com/example/swigbasicproject/swig/computeJNI.java: No such file or directory 

它是什麼,我的思念?

回答

1

在運行swig命令之前,輸出目錄必須已經存在。

+0

我已經使用了以下鏈接http://www.swig.org/Doc2.0/Android.html,如果該文件不存在,它應該被創建。另外我有點困惑compute_wrap將如何創建。 –

+0

但如果目錄'-outdir'不存在,它將返回錯誤。我剛剛嘗試過與不存在的文件夾相同,並顯示相同的錯誤。在提供的教程中,他們正在使用其他目錄路徑,也許你輸入了錯誤的路徑?他們:'src/org/swig/simple',你的:'src/com/example/swigbasicproject/swig'。 –

相關問題