Я действительно застрял и отчаянно нуждаюсь в ответе. Я искал почти везде в Интернете, чтобы решить эту проблему, но без особого успеха.
В основном я скомпилировал ffmpeg для Android и пытаюсь использовать файлы (.so
) внутри Android Studio 2.2.2.
Проблема в том, что я продолжаю получать эту ошибку, когда пытаюсь скомпилировать свой код. Обратите внимание, что мой код отлично работал в MS Visual Studio, и я уверен, что он работает так, как должен.
Сообщение об ошибке компиляции
Я думаю, что эта ошибка означает, что я не связываю файлы моих общих библиотек (.so
) с моим файлом .cpp
(поправьте меня, если я ошибаюсь).
Что я пробовал:
Я попытался включить мои
.so
файлы вmain/jniLibs
, но все равно не получилось.Я поместил файлы
.so
внутрьapp/libs
, и все равно безуспешно.Приведенные правила связывания в cmake, например:
add_library(B SHARED IMPORTED) set_target_properties(B PROPERTIES IMPORTED_LOCATION src/main/jniLibs/armeabi-v7a/libavformat-55.so ) include_directories(src/main/cpp/include/) target_link_libraries(native-lib B)
Это дало мне еще одну ошибку, которая выглядит так:
Error:error: 'src/main/jniLibs/armeabi-v7a/libavformat-55.so', needed by '../../../../build/intermediates/cmake/debug/obj/armeabi-v7a/libnative-lib.so', missing and no known rule to make it
Вот структура моего дерева проектов:
Мне действительно нужна помощь.