我使用this package在Archlinux上下载并安装了Android-NDK.
按照this page上的指南建立(并运行)示例hello-jni没有问题,但如果我尝试用hello-gl2做同样的事情,我会遇到一些错误;看起来它找不到一些头文件:
$../../ndk-build
/usr/bin/make -f /opt/android-ndk/build/core/build-local.mk
Compile++ thumb : gl2jni <= gl_code.cpp
/opt/android-ndk/samples/hello-gl2/jni/gl_code.cpp:22:23: error: GLES2/gl2.h: No such file or directory
/opt/android-ndk/samples/hello-gl2/jni/gl_code.cpp:23:26: error: GLES2/gl2ext.h: No such file or directory
--- SNIP ---
然而,GLES2 / gl2.h和GLES2 / gl2ext.h存在于$(NDK)/ platforms / android-4 / arch-arm /usr/include /中,它看起来像$(NDK)/ build / core / setup- toolchain.mk应该设置这样的包含路径.
有人遇到过同样的问题吗?我该如何编译这个样本?
那么,还有其他选项可以轻松构建Android-NDK应用程序吗?这个构建系统对我来说似乎很复杂,我更喜欢使用cmake来构建我的应用程序.
解决方法:
确保在Application.mk中定义了APP_ABI和APP_PLATFORM,并且你的APP_PLATFORM应该高于android-5 … check:gl.h & glext.h not found
例如,在Application.mk中定义:
APP_ABI := armeabi #armeabi-v7a
APP_STL := stlport_static
APP_PLATFORM := android-8