今天状态很一般,在写OpenCL代码时,总是各种小问题。百度了下android NDK调试问题,但是似乎有点复杂,今天状态不行,所以也就不去折腾了。最后百度到了一种比较简单的调试办法,那就是在LogCat中打印信息。
添加头文件:
#include <android/log.h>
自己定义检测OpenCL错误的函数:
void checkErr(cl_int err,int num)
{
if(CL_SUCCESS!=err){
__android_log_print(ANDROID_LOG_INFO, "ERROR", "ERROR:%d at: %d", err,num);
}
}
用到了android NDK中提供的Log库。
在android.mk中,添加:
LOCAL_LDFLAGS += <span style="color:#ff0000;">-llog </span> -lOpenCL
添加链接Log库
这样当有OpenCL错误时,在LogCat端就会有输出:
这样就能准确定位错误了。
等有空了,还是去研究下ndk-gdb怎么调试吧。