下午好,
我总是有一堆Renderscript脚本来实现精确边缘检测。到目前为止,这一直在完美运作。
不幸的是,使用新设备(三星Galaxy S7),所有脚本似乎都无法通过bcc编译。
我在谷歌跟踪器上搜索了很多,但没有任何改变所涉及的例外情况。我还尝试将我的android环境更新为最新配置并尝试了几个gradle构建配置。不幸的是,我无法让它工作,并总是抛出同样的异常。
然后我开始认为它可能是实际的C99脚本,但它们的设置与我使用Renderscript的其他项目一样 - 实际上可以在这个三星S7上运行。
看似关键的错误消息是:
E/RenderScript: Unable to open shared library (/xxx/package.name.xxx.cache/librs.gauss_5x1.so): (null)
E/RenderScript: Unable to open shared library (/xxx/package.name.xxx.cache/librs.gauss_1x5.so): undefined symbol: root.expand
E/RenderScript: Unable to open shared library (/xxx/package.name.xxx.cache/librs.canny_sobel.so): undefined symbol: root.expand
E/RenderScript: Unable to open shared library (/xxx/package.name.xxx.cache/librs.canny_nms.so): undefined symbol: root.expand
E/RenderScript: Child process "/system/bin/bcc" terminated with status 11
E/RenderScript: bcc: FAILS to compile 'canny_nms'
这导致Android Java层出现致命异常:
E/AndroidRuntime: FATAL EXCEPTION: main
android.renderscript.RSRuntimeException: Loading of ScriptC script failed.
at android.renderscript.ScriptC.<init>(ScriptC.java:63)
at android.support.v8.renderscript.ScriptCThunker.<init>(ScriptCThunker.java:39)
at android.support.v8.renderscript.ScriptC.<init>(ScriptC.java:62)
at com.novarumreader.renderscripttest.ScriptC_canny_nms.<init>(ScriptC_canny_nms.java:42)
at com.novarumreader.renderscripttest.ScriptC_canny_nms.<init>(ScriptC_canny_nms.java:34)
....
非常感谢如何解决问题的任何方向。
非常感谢你的时间,
安东尼奥