添加Gstreamer支持到Android NDK项目

时间:2013-04-18 08:17:48

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

我在Windows 7上安装了最新的android SDK软件包以及最新的Android NDK。

我已经设置了我的环境,并且能够从NDK安装包运行hellojni示例。

但是当我尝试根据gstreamer android tutorial page的创建新项目部分添加Gstreamer支持时,我在尝试构建项目时遇到此错误:

GStreamer      : [COMPILE] => gst-build/gstreamer_android.c
gst-build/gstreamer_android.c:1:17: fatal error: jni.h: No such file or directory
compilation terminated.
E:/GstreamerAndroid/sdk/share/gst-android/ndk-build//gstreamer.mk:167: recipe for 
target `gst-build/gstreamer_android.o' failed
make: *** [gst-build/gstreamer_android.o] Error 1

我尝试了一些解决方案,例如将我的路径变量设置为NDK中的jni.h(例如,ndkr8e \ platforms \ android-14 \ arch-arm \ usr \ include),但没有任何效果。

有人可以建议任何其他解决方案吗?

编辑:正如我所说的iljan,我下载了旧版本的android NDK(r8d),我得到了我的项目进行编译。但我不明白问题是来自我的方面还是NDK版本中的错误。有什么想法吗?

2 个答案:

答案 0 :(得分:1)

NDK版本r8e对我来说同样的问题: 我已经设置了环境(eclipse,android sdk,ndk,cygwin)并成功编译了hello-jni。但Gstreamer Tutorial1将无法编译。 我的NDK安装路径是“C:\ android \ android-ndk-r8e”

但我很幸运能够在我的磁盘上的其他地方安装以前的ndk,所以我只是将它复制到never install旁边,所有文件来自: “C:\ Program Files \ Android \ ndk \ android-ndk-r8d”改为“C:\ android \ android-ndk-r8d”并更改了Eclipse中的NDK位置路径:Window-> Preferences-> Android-> NDK到这个新文件夹。

瞧!它现在编译。

答案 1 :(得分:0)

对此issue发表评论后,似乎在添加

...
LOCAL_LDLIBS := -llog

SYSROOT := /opt/android-ndk-r8e/platforms/android-14/arch-arm/

include $(BUILD_SHARED_LIBRARY)
...

一切正常。