2012-07-26 29 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