dlopen failed: library “../../../../libs/arm64-v8a/libtensorflowlite_plant.so“

在将tensorflow库集成到Android项目并运行时遇到dlopen错误,库路径显示不正确。检查发现库已包含在APK中,错误指向的路径格式异常。分析后确定是由于库缺少属性导致链接路径错误。解决方案是明确指定库的属性。可以通过特定命令检查库是否具有该属性。
摘要由CSDN通过智能技术生成

今天把tensorflow库加入一个安卓工程,运行起来没有问题,但是跑起来却报了下面这个错:

java.lang.UnsatisfiedLinkError: dlopen failed: library "../../../../libs/arm64-v8a/libtensorflowlite_plant.so" not found: needed by /data/app/~~HAZWHMN7hKIAkxXBFifjCw==/com.example.reg-vFQxyoEwJZis9FQCRJjQGg==/base.apk!/lib/arm64-v8a/libfilters.so in namespace classloader-namespace
        at java.lang.Runtime.loadLibrary0(Runtime.java:1087)
        at java.lang.Runtime.loadLibrary0(Runtime.java:1008)
        at java.lang.System.loadLibrary(System.java:1664)

很奇怪,之前移植也没有报错,怎么今天突然来了这样一个错误。
我首先想到的是libtensorflowlite_plant.so这个库没有打包到apk中,于是我把apk解压,发现apk中有这个库,那就排除了这个原因。
然后我发现报错的这个路径优点奇怪,为什么是../../../../libs/arm64-v8a/libtensorflowlite_plant.so,而不是libtensorflowlite_plant.so找不到,按理说lib底下的so库都是同一目录,于是猜测可能是链接路径不对,经过一番查找终于知道了原因,因为libtensor

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值