Android NDK не может найти символ "mmap64" - PullRequest
0 голосов
/ 04 июня 2018

Я новичок в ffmpep, я сделал свой первый простой проект, как этот урок

https://proandroiddev.com/android-ndk-how-to-integrate-pre-built-libraries-in-case-of-the-ffmpeg-7ff24551a0f?gi=72f471c40747

Но возникла ошибка "не могу найти mmap64условное обозначение...".

Помогите мне, пожалуйста!

Это мой logcat:

java.lang.UnsatisfiedLinkError: dlopen не удалось: не удалось загрузить библиотеку "libavutil.so", необходимую для"libnative-lib.so";не может найти символ «mmap64», на который ссылается «libavutil.so» ... в java.lang.Runtime.loadLibrary (Runtime.java:365) в java.lang.System.loadLibrary (System.java:526) в видео.media.tainguyen.test_ffmpeg_ndk.MainActivity. (MainActivity.java:12) в java.lang.Class.newInstanceImpl (собственный метод) в java.lang.Class.newInstance (Class.java:1208) в android.app.Instrumentation.newActivity (Instrumentation.java:1079) в android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2222) в android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2363) в android.app.ActivityThread.access $ 900 (ActivityThread.Java: 161) на android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1265) на android.os.Handler.dispatchMessage (Handler.java:102) на android.os.Looper.loop (Looper.java:157) на android.app.ActivityThread.main (ActivityThread.java:5356) на java.lang.reflect.Method.invokeNative (собственный метод) на java.lang.reflect.Method.invoke (Method.java:515) на ком.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:1265) в com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1081) в dalvik.system.NativeStart.main (собственный метод)

Я собрал свой файл so с помощью NDK r17, ffmpeg версии 3.4, ubuntu 12.04.5 (64bit) (я только что собрал его в ubuntu, моя текущая ОС - windows 7 64 bit) Мой проект создан в Android Studio2.2 с использованием NDK r17

compileSdkVersion 27

buildToolsVersion "27.0.2"

minSdkVersion 15

targetSdkVersion 27

externalNativeBuild{cmake {cppFlags "" arguments "-DANDROID_STL = c ++ _ shared" target "native-lib", "avutil", "avformat", "avcodec"}} ndk {abiFilters "x86", "x86_64", "armeabi-v7a "," arm64-v8a "," armeabi "}

...