android ndk UnsatisfiedLinkError cuando se usa una biblioteca compartida preconstruida

Estoy intentando crear una biblioteca compartida que se vincule con otra biblioteca compartida.

Aquí está mi módulo principal Android.mk

TOP_LOCAL_PATH := $(call my-dir)
include $(call all-subdir-makefiles)

LOCAL_PATH := $(TOP_LOCAL_PATH)

include $(CLEAR_VARS)

LOCAL_CPP_EXTENSION := cpp


LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ $(LOCAL_PATH)/lib/include
LOCAL_MODULE    := SightCore-jni
LOCAL_SRC_FILES := SightDemo.cpp SightCore-jni.cpp
LOCAL_SHARED_LIBRARIES := SightAPI
LOCAL_LDLIBS = -llog 

include $(BUILD_SHARED_LIBRARY)

También tengo la biblioteca compartida preconstruida en el directorio ./lib con su propio archivo Android.mk:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE    := SightAPI
LOCAL_SRC_FILES := libSightAPI.so
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include

include $(PREBUILT_SHARED_LIBRARY)

l archivo fuente SightCore-jni.cpp es la interfaz jni de la biblioteca compartida y se carga con el comando

System.loadLibrary("SightCore-jni");  

Durante el proceso ndk-build obtengono compilación o vinculación errores. Cuando intento ejecutar la aplicación y acceder a uno de los métodos nativos, obtengo UnsatsfiedLinkError. Noté que si deshabilito las referencias a SightAPI en mi código jni y pongo un error tipográfico en LOCAL_STATIC_LIBRARIES: = línea SightAPI, la compilación es exitosa y no hay UnsatisfiedLinkError.
Esto significa que el código jni que tengo es bueno (estoy realmente seguro de que está bien ...)

Así que la observación es la siguiente:
Si compilo la biblioteca compartidacon el precompilado biblioteca compartida me sale un corrupto .so archivo.

Si compilo el mismo proyecto ndksin vinculación a la @ precompila biblioteca compartida hayNo hay problem cargando la biblioteca compartida desde Java.

Por favor, ayúdame si puedes.

Gracias por adelantado

Ita

Respuestas a la pregunta(3)

Su respuesta a la pregunta