Android java.lang.UnsatisfiedLinkError:dlopen失败:library"/主页/。。。找不到

Android java.lang.UnsatisfiedLinkError:dlopen失败:library"/主页/。。。找不到,android,android-ndk,Android,Android Ndk,我想将我的库添加到示例中。我审查了问题和其他相关问题,但它们并没有解决我的问题 在我的CMakeLists.txt中,我刚刚用我的库(libgengine.so)替换了gperf库(谷歌示例库): 图书馆的位置如下: 该库是基于readelf命令为armeabi-v7a构建的: 主要活动: static { System.loadLibrary("hello-libs"); } 当我运行应用程序时: java.lang.UnsatisfiedLinkError: d

我想将我的库添加到示例中。我审查了问题和其他相关问题,但它们并没有解决我的问题

在我的
CMakeLists.txt
中,我刚刚用我的库(libgengine.so)替换了gperf库(谷歌示例库):

图书馆的位置如下:

该库是基于readelf命令为armeabi-v7a构建的:

主要活动:

static {
        System.loadLibrary("hello-libs");
    }
当我运行应用程序时:

java.lang.UnsatisfiedLinkError: dlopen failed: library "/home/user/Downloads/ndk-samples-master/hello-libs/app/src/main/cpp/../../../../distribution/gperf/lib/armeabi-v7a/libgengine.so" not found
        at java.lang.Runtime.loadLibrary(Runtime.java:372)
        at java.lang.System.loadLibrary(System.java:1076)
        at com.example.hellolibs.MainActivity.<clinit>(MainActivity.java:36)
        at java.lang.Class.newInstance(Native Method)
        at android.app.Instrumentation.newActivity(Instrumentation.java:1095)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3083)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349)
        at android.app.ActivityThread.access$1100(ActivityThread.java:221)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:158)
        at android.app.ActivityThread.main(ActivityThread.java:7224)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
java.lang.UnsatisfiedLinkError:dlopen失败:library”/home/user/Downloads/ndk samples master/hello libs/app/src/main/cpp/../../../../../../../../distribution/gperf/lib/armeabi-v7a/libgengine.so“未找到”
位于java.lang.Runtime.loadLibrary(Runtime.java:372)
位于java.lang.System.loadLibrary(System.java:1076)
位于com.example.hellolibs.MainActivity。(MainActivity.java:36)
位于java.lang.Class.newInstance(本机方法)
位于android.app.Instrumentation.newActivity(Instrumentation.java:1095)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3083)上
位于android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349)
在android.app.ActivityThread.access$1100(ActivityThread.java:221)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)
位于android.os.Handler.dispatchMessage(Handler.java:102)
位于android.os.Looper.loop(Looper.java:158)
位于android.app.ActivityThread.main(ActivityThread.java:7224)
位于java.lang.reflect.Method.invoke(本机方法)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run上(ZygoteInit.java:1230)
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

gperf库工作得很好,我可以调用函数,但是当我想使用我的库时,我会遇到一个异常。主要问题是什么?库本身必须更改,或者java代码必须更改?

您是否检查了文件
/home/user/Downloads/ndk samples master/hello libs/app/src/main/cpp/../../../../../../../distribution/gperf/lib/armeabi-v7a/libgengine.so
是否存在?@mkrieger1是的,如我所述。目录中存在.so文件。是否确定
/home/user/Downloads/ndk samples master/hello libs/app/src/main/cpp/../../../../../../../../distribution
指向屏幕截图中显示的相同位置?@mkrieger1是。我检查了所有这些基本的东西。它和其他文件一起工作很好。
java.lang.UnsatisfiedLinkError: dlopen failed: library "/home/user/Downloads/ndk-samples-master/hello-libs/app/src/main/cpp/../../../../distribution/gperf/lib/armeabi-v7a/libgengine.so" not found
        at java.lang.Runtime.loadLibrary(Runtime.java:372)
        at java.lang.System.loadLibrary(System.java:1076)
        at com.example.hellolibs.MainActivity.<clinit>(MainActivity.java:36)
        at java.lang.Class.newInstance(Native Method)
        at android.app.Instrumentation.newActivity(Instrumentation.java:1095)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3083)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349)
        at android.app.ActivityThread.access$1100(ActivityThread.java:221)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:158)
        at android.app.ActivityThread.main(ActivityThread.java:7224)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)