在eclipse中编译示例JNI代码

时间:2012-10-04 19:30:36

标签: android eclipse android-ndk java-native-interface

我在编译Windows 7中Eclipse中的android-ndk-r8b附带的一些示例C代码(hello-jni.c)时遇到了一些重大困难。我按照此处的说明进行了http://mhandroid.wordpress.com/2011/01/23/using-eclipse-for-android-cc-development/ (在第7步中,我将ndk-build更改为bash -c ndk-build以使其正常运行)。 Eclipse吐出以下错误:

12:23:44 **** Incremental Build of configuration Default for project MyAndroidProject ****
bash -c ndk-build 
Install        : libhello-jni.so => libs/armeabi/libhello-jni.so
/cygdrive/c/make-3.82/install: line 1: Installation: command not found
/cygdrive/c/make-3.82/install: line 2: AndroidManifest.xml: command not found
/cygdrive/c/make-3.82/install: line 4: syntax error near unexpected token `C'
/cygdrive/c/make-3.82/install: line 4: `Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004 Free'
make: *** [libs/armeabi/libhello-jni.so] Error 2
/cygdrive/c/android-ndk-r8b/build/core/build-binary.mk:418: recipe for target `libs/armeabi/libhello-jni.so' failed

12:23:45 Build Finished (took 1s.82ms)

我很确定我已经包含了所有必要的文件和目录,并正确设置了PATH环境变量(在Windows中),但我不知道为什么它一直给我这个错误。

编辑:忘了提到我能够在Cygwin(最新版本)shell中成功编译代码。我只是想知道是否有办法用Eclipse(Juno),ADT v20。

来做到这一点

1 个答案:

答案 0 :(得分:4)

您应该关注the ADT instructions

一般来说,NDK r8b预装了 make 版本,并且可以在没有 cygwin 的情况下使用。对于这种情况,它有 ndk-build.cmd