CUDA 3.0がリリースされましたが、今回からOpenCL SDKも同梱されて /Developer/GPU Computing/OpenCL にインストールされるようになりました。
CUDA ("C"ディレクトリの中身)はmakeでsampleが普通にビルドできたのですが、OpenCLの方は以下のようなエラーが出ます。
1 src/oclUtils.cpp: In function ‘void oclPrintDevInfo(int, _cl_device_id*)’:
2 src/oclUtils.cpp:282: error: ‘CL_DEVICE_COMPUTE_CAPABILITY_MAJOR_NV’ was not declared in this scope
3 src/oclUtils.cpp:283: error: ‘CL_DEVICE_COMPUTE_CAPABILITY_MINOR_NV’ was not declared in this scope
4 src/oclUtils.cpp:290: error: ‘CL_DEVICE_REGISTERS_PER_BLOCK_NV’ was not declared in this scope
5 src/oclUtils.cpp:294: error: ‘CL_DEVICE_WARP_SIZE_NV’ was not declared in this scope
6 src/oclUtils.cpp:298: error: ‘CL_DEVICE_GPU_OVERLAP_NV’ was not declared in this scope
7 src/oclUtils.cpp:302: error: ‘CL_DEVICE_KERNEL_EXEC_TIMEOUT_NV’ was not declared in this scope
8 src/oclUtils.cpp:306: error: ‘CL_DEVICE_INTEGRATED_MEMORY_NV’ was not declared in this scope
9 make: *** [obj/release/oclUtils.cpp.o] Error 1
これらの定数はSDK同梱のcommon/inc/cl_ext.h の中で定義されているのですが、どうやら
/System/Library/Frameworks/OpenCL.framework/Headers の方を参照してしまっているようで、こちらには定数が定義されていないようです。