2012-07-26 32 views
4

我想使用Android NDK编译代码。我以前使用过这段代码很好,但改变了一件事,现在它不会编译。该数值显示的错误是:Android bitmap.h未找到本地代码编译

"Compile++ thumb : filters <= filters.cpp 
C:/Android/my-app//jni/filters.cpp:4:28: fatal error: android 
/bitmap.h: No such file or directory 
compilation terminated. 
make: *** [C:/Android/my-app//obj/local/armeabi/objs/filters/ 
filters.o] Error 1 

我bitmap.h文件库中的定义为:

#include <android/bitmap.h> 

我知道bitmap.h是8的目标SKD构建后才有或更高,我的目标是10分和8分。有什么建议吗?这让我疯狂并且习惯于工作!感谢您提供的任何帮助。

编辑:这是我的Android.mk文件还

LOCAL_PATH := $(call my-dir) 

include $(CLEAR_VARS) 

LOCAL_MODULE := filters 
LOCAL_SRC_FILES := filters.cpp 
LOCAL_LDLIBS := -lm -llog -ljnigraphics 

include $(BUILD_SHARED_LIBRARY) 
+2

的可能重复[因为Bitmap.h缺少的Android NDK不会建库?](http://stackoverflow.com/questions/11656833/ android-ndk-wont-build-library-because-bitmap-h-is-missing) – 2012-07-26 03:04:41

回答

14

得到它的工作。我使用的是SDK工具修订版20和平台工具修订版12.为了让它能够编译,我必须在命令行中指定APP_PLATFORM(显然这些修订版默认为其他内容)。

刚跑:

ndk-build APP_PLATFORM=android-8 

。它内置!

+0

是的,最好的拯救我的一天tnx – 2016-05-26 07:25:09

0

那么,答案吼帮助我也。 我尝试将APP_PLATFORM variabile从Application.mk设置为android-10(因为我预料这个选项也应该是APP_ABI所在的位置),但这并没有帮助。 非常不直观,但无论工程,对.. ..?

1

插入APP_PLATFORM = Android的8成文件Application.mk