我得到了一個構建在Linux x86上的共享庫,我們稱之爲libA.so,並且我想使用此庫SDK提供的函數調用。Android NDK:鏈接x86共享庫
我有問題的建築,並有幾個問題:
1)我將能夠建立適用於x86,但我將能夠建立手臂?我相信答案是否定的,這意味着我無法在Nexus 5上運行。 2)ndk-build抱怨應該由我的LOCAL_SHARED_LIBRARIES解決的#include。我不確定這是爲什麼。我的Android.mk如下:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := B
LOCAL_SRC_FILES := B.cpp
LOCAL_SHARED_LIBRARIES := A
LOCAL_LDLIBS := -llog
include $(BUILD_SHARED_LIBRARY)
有人可以幫我解決我的Android.mk嗎?我不明白爲什麼它在B.cpp中抱怨我的包含聲明。請讓我知道我是否可以在arm環境下運行B,儘管我依靠的SDK是構建在x86上的。
你可以發佈你所得到的錯誤?另外,你能否澄清一下:你只有一個針對x86編譯的libA.so的二進制版本,沒有針對libA.so的源代碼,並且你想在自己的B.cpp中有代碼,它將從libA.so調用一個函數? – 2015-02-06 14:01:22
是的你是對的! – Jary316 2015-02-06 19:11:41