Я построил ffmpeg
исполняемый двоичный файл с общими библиотеками на Android. Но когда я запускаю его на Marshmallow
, я получил следующую ошибку, исполняемый файл не может работать.исполняемый двоичный файл не может работать на android marshmallow
$ LD_LIBRARY_PATH=./lib ./bin/ffmpeg
CANNOT LINK EXECUTABLE: cannot find "libavformat.so" from verneed[0] in DT_NEEDED list for "./bin/ffmpeg"
page record for 0xb6eee00c was not found (block_size=16)
Я уже добавил --extra-ldexeflags="-pie"
при компиляции двоичного кода.
Исполняемый двоичный файл выполняется правильно на устройстве pre Marshmallow
.
Раньше я не сталкивался с такой проблемой, не пропустил ли я что-то важное? Как я могу сделать эту двоичную работу на Marshmallow
?
Дополнительная информация о моей среде.
Я использовал android-ndk-r10e
с
SYSROOT=$ANDROID_NDK_ROOT/platforms/android-19/arch-arm
и компилированные инструменты версия
arm-linux-androideabi-gcc (GCC) 4.9 20140827 (prerelease)
Если я построил ffmpeg
в один исполняемый бинарный файл (построить статические библиотеки, а затем встраивают в бинарный), запустить его должным образом.
Ссылка не может быть достигнута. :( – DysaniazzZ