库在板上使用 OpenCL 。似乎 OpenCL 库在板上不可访问,我们收到以下错误:
E/链接器:库“/system/vendor/lib64/libOpenCL.so”(“/vendor/lib64/libOpenCL.so”)需要或被“/data/app/com.mapbox.vision.teaser-Z24w2xgzilGUCXbduDriKg==”删除/base.apk!/lib/arm64-v8a/libvision-sdk-wrapper.so" 无法访问命名空间:[name="classloader-namespace", ld_library_paths="", default_library_paths="/data/app/com .mapbox.vision.teaser-Z24w2xgzilGUCXbduDriKg==/lib/arm64:/data/app/com.mapbox.vision.teaser-Z24w2xgzilGUCXbduDriKg==/base.apk!/lib/arm64-v8a", permitted_paths="/data: /mnt/expand:/data/data/com.mapbox.vision.teaser"]
Internet 建议将libOpenCL.so添加到 [color=rgba(0, 0, 0, 0.75)]
/system/etc/public.libraries.txt (
1 ,
2 ,
3 ),但这对我们不起作用。
/system/etc/public.libraries.txt[color=rgba(0, 0, 0, 0.75)]中的条目似乎 只列出了[color=rgba(0, 0, 0, 0.75)]
/system/lib 而不是 [color=rgba(0, 0, 0, 0.75)]/system/vendor/lib64中的库
。 因此,当我们将
libOpenCL.so添加到此列表时,设备在重启后无法启动,抱怨无法加载
libOpenCL.so。
我们试图将
libOpenCL.so复制到
/system/lib,这产生了另一个错误,因为 libOpenCL 依赖于另一个库,而该库也不在
/system/lib 中,依赖于另一个库等等。
我们如何才能正确公开 libOpenCL?似乎应该有另一个 public.libraries.txt 列出暴露的供应商库,但我们无法找到一个。