2012-05-25 4 views
1

Я столкнулся с ситуацией, о которой я понятия не имею. Я пытаюсь проверить один метод, который я реализовал на C++, и я использовал swig для создания оболочки. После компиляции, когда я попытался запустить приложение, я получил ошибку java.lang.UnsatisfiedLinkError.Android: Не удается загрузить библиотеку

Далее говорится, что

cannot load library:reloc_library[1311]:33 
cannot locate '_Z13recognizeFacePKcS0_' 
... 

и вдруг бросить исключение.

Я попытался использовать оболочку adb для отладки и поиска библиотеки в нужном месте (данные/данные/com/mesh/faceAuth/lib/libfaceAuth.so), но он дает ту же ошибку. Я также читал с сайта this, что он связан с неправильной реализацией STL, о которой я не знаю. Я высоко ценю ваше откровенное предложение.

С уважением, Mohammed.

ответ

2

Лучше угадать, какую информацию вы предоставили. Библиотека, которую вы загружаете, требует загрузки некоторых зависимостей перед ее загрузкой.

Например:

System.loadLibrary("bullet"); 
System.loadLibrary("irrlicht"); 
System.loadLibrary("gamescript"); 

gamescript библиотека должна другая библиотека 2, чтобы быть загружены перед ней. В противном случае это дает мне ту же ошибку, о которой вы упомянули. Я могу разобраться с этой проблемой, если вы можете разместить часть своего файла .mk для создания библиотеки здесь.

+0

local_path: = $ (назовем мой-Dir) включают $ (CLEAR_VARS) OPENCV_CAMERA_MODULES: = выкл включают ../includeOpenCV.mk ifeq ("$ (подстановочные $ (OPENCV_MK_PATH))", "") \t #try для загрузки OpenCV.mk из установки по умолчанию местоположение \t включают $ (TOOLCHAIN_PREBUILT_ROOT) /user/share/OpenCV/OpenCV.mk еще \t включают $ (OPENCV_MK_PATH) ENDIF LOCAL_ALLOW_UNDEFINED_SYMBOLS: = True LOCAL_LDLIBS + = -llog -ldl LOCAL_C_INCLUDES + = JNI/faceAuth.h LOCAL_MODULE: = faceRec LOCAL_SRC_FILES: = \t \t faceAuth.cpp ген/faceAuth_wrap.cpp \t включают $ (BUILD_SHARED_LIBRARY) – user1382114

+0

Lastest Ошибка, Не реализована реализация для встроенного Lcom/android/faceAuth/core/faceAuthJNI; .init (Ljava/lang/String; Ljava/lang/String; Ljava/lang/String;) V – user1382114

0

Ваша ошибка не имеет отношения к STL.

Возможно, вы ссылаетесь на глобальную функцию ::recognizeFace(char const*, char const*) в своем коде. Возможно, у вас есть другая функция, определенная, например, recognizeFace(char*, char*).

Смежные вопросы