Я использую ndk-build для сборки набора общей библиотеки (.so) для моего проекта Android. Я настроил и сделал исходный код библиотеки C ++ ( gdal-2.2.2 ).
все было в порядке. ("./ configure & make & make install" прошла успешно).
Итак, я создал мою папку jni, как эта документация .
но когда я пытаюсь использовать ndk-build в windows, я получаю много ошибок, таких как «Неопределенное отношение к чему-либо».
Я потратил много времени на этот проект. Есть ли кто-нибудь, чтобы помочь мне?
Спасибо.
Обновление
Я использовал configure в Ubuntu 16.04 следующим образом:
./configure --prefix=/home/mahdi/Desktop/build/ --with-spatialite=yes --with-spatialite-soname=libspatialite.so --host=i686-linux-android CXXFLAGS="-D_GLIBCXX_USE_CXX11_ABI=0" LIBS="-lsupc++ -lstdc++"
После make & make setup step Я создал JNI. это мой каталог.
jniwrap
jni
gdal
Android.mk
Application.mk
gdal_wrap.cpp
gdalconst_wrap.c
gnm_wrap.cpp
libgdal.a
ogr_wrap.cpp
osr_wrap.cpp
Android.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := gdal
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/gdal/include
LOCAL_SRC_FILES := libgdal.a
LOCAL_EXPORT_LDLIBS := -lz
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := gdaljni
LOCAL_SRC_FILES := gdal_wrap.cpp
LOCAL_STATIC_LIBRARIES := gdal
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := gdalconstjni
LOCAL_SRC_FILES := gdalconst_wrap.c
LOCAL_STATIC_LIBRARIES := gdal
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := ogrjni
LOCAL_SRC_FILES := ogr_wrap.cpp
LOCAL_STATIC_LIBRARIES := gdal
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := osrjni
LOCAL_SRC_FILES := osr_wrap.cpp
LOCAL_STATIC_LIBRARIES := gdal
include $(BUILD_SHARED_LIBRARY)
Aplication.mk
APP_STL := gnustl_shared
APP_CFLAGS := Android.mk
APP_ABI := x86
APP_PLATFORM := android-14
Тогда я использовал android-ndk-r16b в windows-x86_64, но я столкнулся с такими ошибками, как на картинке:
Было много "неопределенной ошибки ссылки", которую я не могу показать здесь.
Примечание : для создания gdal Java Binding я использовал swig и jdk7 на своей Ubuntu 16.04.