То, что я хочу, это создать собственный двоичный файл с NDK.Есть пары разделяемых библиотек, также была построена.Структура APK выглядит следующим образом:
/data/data/mypackage/files/my_binary
/data/data/mypackage/lib/liba.so
/data/data/mypackage/lib/libb.so
Когда исполняется бинарный файл, выдается ошибка типа CANNOT LINK EXECUTABLE: could not load library "liba.so" needed by "./mybinay"; caused by library liba.so not found
.Работает нормально после установки LD_LIBRARY_PATH
на /data/data/mypackage/lib
.
У меня вопрос, как заставить его работать без установки LD_LIBRARY_PATH
в файле CMAKE или Gradel?
Файл Cmake.
add_library(a, src/a.cc)
add_library(b, src/b.cc)
add_executable(mybinary src/mybinary.cc)
target_link_libraries(a log)
target_link_libraries(mybinary a android log b)
Файл Gradle.
externalNativeBuild {
cmake {
cppFlags "-std=c++14 -frtti -fexceptions"
targets 'mybinary','a','b'
}
}