android-ndk statischen Bibliotheken, die android -.mk
Habe ich drei statische Bibliotheken von einem Rahmen, den ich verwenden wollte in meinem Projekt. Diese Bibliotheken sind aufgerufen libtinySAK_armv7-a.a, libtinyNET_armv7-a.a and libtinyHTTP_armv7-a.a
. Ich habe Sie in den gleichen Ordner wie die Android.mk
undApplication.mk
.
Meine native code, der von Ihnen abhängig ist, so will ich Sie in meinem shared library.
Von dem, was ich gelesen habe, auf stackoverflow und google würde ich glauben, dass die android.mk soll in etwa so Aussehen:
# TINYSAK
include $(CLEAR_VARS)
LOCAL_MODULE := tinySAK
LOCAL_SRC_FILES := libtinySAK_armv7-a.a
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/../../../doubango/tinySAK/src/
include $(PREBUILT_STATIC_LIBRARY)
# TINYNET
include $(CLEAR_VARS)
LOCAL_MODULE := tinyNET
LOCAL_SRC_FILES := libtinyNET_armv7-a.a
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/../../../doubango/tinyNET/src/
include $(PREBUILT_STATIC_LIBRARY)
# TINYHTTP
include $(CLEAR_VARS)
LOCAL_MODULE := tinyHTTP
LOCAL_SRC_FILES := libtinyHTTP_armv7-a.a
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/../../../doubango/tinyHTTP/include/
include $(PREBUILT_STATIC_LIBRARY)
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := libtest
LOCAL_SRC_FILES := \
../../test/stack.cpp \
../../test/main.cpp
LOCAL_C_INCLUDES := \
$(LOCAL_PATH)/../../test/include/ \
$(LOCAL_PATH)/../../../doubango/tinyHTTP/include/ \
$(LOCAL_PATH)/../../../doubango/tinySAK/src/ \
$(LOCAL_PATH)/../../../doubango/tinyNET/src/
LOCAL_STATIC_LIBRARIES := \
tinySAK \
tinyNET \
tinyHTTP
include $(BUILD_SHARED_LIBRARY)
Meiner Anwendung.mk:
APP_STL := stlport_static
APP_ABI := armeabi-v7a
Den Fehler bekomme ich nach dem compilieren("ndk-build" Projekt von dir)
jni/Android.mk:tinySAK: LOCAL_SRC_FILES points to a missing file
Und ich nehme an, die 2 anderen Bibliotheken auch scheitern. Warum kann er Sie finden?
Außerdem gibt es andere Fehler, die ich gemacht habe in der makefile?
Dank
InformationsquelleAutor KaiserJohaan | 2011-10-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nevermind, ich habe es gelöst.
Als ich erklärte, dass die "LOCAL_PATH" am Anfang der make-Datei nur. Anders würde es Aussehen, für die libs in der ndk-Ordner.
Wo sonst sollten die LOCAL_PATH deklariert werden
InformationsquelleAutor KaiserJohaan
Versuchen
LOCAL_LDLIBS
stattLOCAL_SRC_FILES
.+1 weil LOCAL_LDLIBS für mich gearbeitet.
InformationsquelleAutor Ertebolle