TianZerL / Anime4KCPP_Android

Anime4KCPP For Android Archiving
MIT License
8 stars 1 forks source link

执行超分的时候报错 #3

Open CoderCaiSL opened 1 month ago

CoderCaiSL commented 1 month ago

早晨,作者,我这边昨晚编译成功跑起来后,出现了找不到so的异常,能帮忙看下什么原因吗?谢谢,以下是报错信息 E FATAL EXCEPTION: main Process: github.tianzerl.anime4kcpp2, PID: 2968 java.lang.UnsatisfiedLinkError: dlopen failed: library "libcutils.so" not found: needed by /data/app/~~0Nfv-ZD5-SzdWk5jkPnq2A==/github.tianzerl.anime4kcpp2-WOINarZ2FAW6C-7vJCunCg==/lib/arm64/libOpenCL.so in namespace clns-4 at java.lang.Runtime.loadLibrary0(Runtime.java:1081) at java.lang.Runtime.loadLibrary0(Runtime.java:1003) at java.lang.System.loadLibrary(System.java:1765) at github.tianzerl.anime4kcpp.wrapper.Anime4K.(Anime4K.java:7) at github.tianzerl.anime4kcpp.MainActivity.onOptionsItemSelected(MainActivity.java:191) at android.app.Activity.onMenuItemSelected(Activity.java:4679) at androidx.fragment.app.FragmentActivity.onMenuItemSelected(FragmentActivity.java:352) at androidx.appcompat.app.AppCompatActivity.onMenuItemSelected(AppCompatActivity.java:264) at androidx.appcompat.view.WindowCallbackWrapper.onMenuItemSelected(WindowCallbackWrapper.java:109) at androidx.appcompat.app.AppCompatDelegateImpl.onMenuItemSelected(AppCompatDelegateImpl.java:1179) at androidx.appcompat.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:834) at androidx.appcompat.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:158) at androidx.appcompat.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:985) at androidx.appcompat.view.menu.MenuPopup.onItemClick(MenuPopup.java:128) at android.widget.AdapterView.performItemClick(AdapterView.java:376) at android.widget.AbsListView.performItemClick(AbsListView.java:1360) at android.widget.AbsListView$PerformClick.run(AbsListView.java:3639) at android.widget.AbsListView$3.run(AbsListView.java:4817) at android.os.Handler.handleCallback(Handler.java:958) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loopOnce(Looper.java:230) at android.os.Looper.loop(Looper.java:319) 我编译出来的库显示已经存在相关so了 image 但是却找不到,百思不得其解

TianZerL commented 1 month ago

libcutils.so,这个是你这个libOpenCl.so需要的依赖,和libopencl.so一样不是安卓标准的一部分,你可以尝试把它也提取出来,然后link到一起。 如果你需要我之前那个版本的libOpenCL.so,其实可以从release里的apk里提取。

CoderCaiSL commented 1 month ago

libcutils.so,这个是你这个libOpenCl.so需要的依赖,和libopencl.so一样不是安卓标准的一部分,你可以尝试把它也提取出来,然后link到一起。 如果你需要我之前那个版本的libOpenCL.so,其实可以从release里的apk里提取。

但是,我使用的opencl.so来自这里https://github.com/TianZerL/Anime4KCPP/issues/108#issuecomment-1801871654 ,是你以前提供给其他人的opencl,编译出来的却报libcutils.so异常,然后我对比了你提供的release的apk,你打出来的包里面,只有一个so

image

感觉像是你编译的anime4k.so里面包含了opencl.so,而我编译出来的却是拆分开的,是这个原因吗?或者我该如何处理?

TianZerL commented 1 month ago

你有改过cmake吗。 引入opencl和opencv需要使用cmake引入而非as直接添加依赖。

CoderCaiSL commented 1 month ago

你有改过cmake吗。 引入opencl和opencv需要使用cmake引入而非as直接添加依赖。

嗯,没有,cmake我只是改了本地的路径 image

TianZerL commented 1 month ago

我觉得问题可能在gradle或者ndk的版本上,你提到的那个issue里面我写了编译步骤和对应的版本,你试一下。实在不行就只能补齐缺失的各种so库了,和libopencl.so一起一并链接。