У меня много проблем при попытке перенести устаревшее приложение с NDK 16 на NDK 19. Проблема в том, что это приложение было построено поверх библиотеки ACE C ++, которая связана как статическая библиотека с помощью импорта статической библиотеки. в файле CMakeLists.txt.
Файл CMakeLists настроен аналогично https://github.com/googlesamples/android-ndk/blob/master/hello-libs/app/src/main/cpp/CMakeLists.txt пример:
add_library(lib_ace STATIC IMPORTED)
set_target_properties(lib_ace PROPERTIES IMPORTED_LOCATION
${distribution_DIR}/libACE.a)
Муравей тогда
target_link_libraries(myProjectLib
android
lib_ace
... many other libs ...
log)
http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/ACE-INSTALL.html#android
Я создал автономную цепочку инструментов, и библиотека ACE собирается без ошибок, следуя инструкциям на веб-сайте ACE по указанной ссылке.
Но когда я пытаюсь связать статическую библиотеку ACE со своими проектами динамической библиотеки jni C ++ в Android Studio, сборка ниндзя жалуется: «неподдерживаемый динамический перенос r_arm_rel32»
Если кто-то знает о каком-либо текущем проекте или примере с открытым исходным кодом, использующим как ACE, так и Android, предоставьте ссылку!
Я ценю любую помощь !!!