Добрый день,
У меня всегда была куча скриптов Renderscript для тонкого обнаружения краев. Это работает безупречно до сих пор.
К сожалению, с новым устройством (Samsung Galaxy S7) все скрипты, кажется, не могут быть скомпилированы bcc.
Я много искал в Google Tracker и SO, но ничего не изменил в задействованных исключениях. Я также попытался обновить свою среду Android до последней конфигурации и попробовал несколько конфигураций сборки gradle. К сожалению, я не смог заставить его работать и всегда выдает одно и то же исключение.
Затем я начал думать, что это могут быть настоящие сценарии C99, но они настроены так же, как и другие мои проекты с Renderscript, которые действительно работают на этом Samsung 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)
....
Любая ориентация в том, как решить проблему, будет высоко оценена.
Большое спасибо за ваше время,
Антонио