Przeszukałem wiele tematów dotyczących łączenia libpng z moim projektem Android ndk, ale znalazłem właściwą odpowiedź na mój problem i mam nadzieję, że ktoś mi pomoże.Dodawanie libpng w androidowym projekcie ndk
Jest hierarchia mojego projektu:
JNI
different_cpp_files
different_hpp_files
Android.mk
libpng
different_cpp_files
different_hpp_files
Android.mk
Android.mk w folderze libpng:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LS_C=$(subst $(1)/,,$(wildcard $(1)/*.c))
LOCAL_MODULE := png
LOCAL_SRC_FILES := \
$(filter-out example.c pngtest.c,$(call LS_C,$(LOCAL_PATH)))
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)
LOCAL_EXPORT_LDLIBS := -lz
include $(BUILD_STATIC_LIBRARY)
Przypuszczam, że wszystko jest w porządku tutaj ..
Android.mk w folderze JNI:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LS_CPP=$(subst $(1)/,,$(wildcard $(1)/*.cpp))
LOCAL_MODULE := pacman
LOCAL_CFLAGS := -Wno-psabi
LOCAL_SRC_FILES := $(call LS_CPP,$(LOCAL_PATH))
LOCAL_LDLIBS := -landroid -llog -lEGL -lGLESv1_CM -lOpenSLES
LOCAL_STATIC_LIBRARIES := android_native_app_glue png
include $(BUILD_SHARED_LIBRARY)
$(call import-module,android/native_app_glue)
$(call import-module,libpng)
Ostatnia linia pokazuje, że mam libpng jak native_app_glue lib (w katalogu źródeł Android NDK) Teraz chcę skompilować libpng z mojego projektu. Co muszę zmienić w pliku Android.mk?
Wielkie dzięki za odpowiedź, ale nie jest to, czego chcę. Muszę wysłać mój projekt do firmy. Nie sądzę, że byłoby grzecznie powiedzieć im, co mają zrobić, aby mój projekt działał - mam na myśli kopiowanie plików w android_ndk_folder i tak dalej. Po prostu skompilują go, aby wszystkie potrzebne pliki zostały włączone do projektu. –
To będzie działać tylko dla urządzeń ARM, a następnie tylko starych. Brakuje MIPS, 64-bitowego ARM, x86, 64-bitowego x86, ARM z jednostkami zmiennoprzecinkowymi ... – dascandy
To działało jak czar budujący na devie Widnwos ... działało również ze starszymi wersjami libpng. Testowane z 1.4.19. Po prostu pobierz z oficjalnej strony i skopiuj/wklej pliki Android i Application.mk do pobranego folderu i uruchom ndk-build – velval