10092. OpenCL Build Program Debug

I'm a slow walker, but I never walk backwards.

題目描述

為 OpenCL 中的 clBuildProgram() Debug 鋪路。請嘗試從標準輸入得到要編譯的檔案名稱,並把編譯的錯誤訊息輸出。

err1.cl

1
2
3
4
5
typedef unsigned int uint32_t;
__kernel void mul(__global uint32_t A[], __global uint32_t C[], const int N)
{
    opencl;
}

輸入格式

輸入只有一行,字串長度不大於 30 的檔案名稱。

輸出格式

經由 clGetProgramBuildInfo(...) 後,直接將錯誤訊息印出,如 printf("%s", program_log); 無須換行。

範例輸入 1 (stdin 標準串流輸入)

err1.cl

範例輸出 1

<kernel>:4:2: error: use of undeclared identifier 'opencl'
        opencl;
        ^

編譯參數

1
gcc -std=c99 -O2 main.c -lOpenCL

Discussion