我是OpenCL的新手,我一直在尝试在Nvidia上测试运行的OpenCL代码。我安装了CUDA 6.0工具包,并在visual studio 2010中添加了.cu和.cl扩展。我在项目属性的链接器选项卡中包含了OpenCL.lib。我在visual studio 2010中包含了所需的库。但是,当我编译我的代码时,我收到一个错误“nvcc:致命错误:不知道如何处理matvec.cl”。有人可以对这个问题有所了解。过去两天我一直在这里。之前有过与此相关的问题,但没有回答一个问题,这里是链接: Cannot run OpenCL on an NVIDIA Card ( 'CL/cl_platform.h': No such file or directory) 而另一个回复中的链接由于某种原因不起作用,这里是链接: How to configure OpenCL in visual studio2010 for nvidia's gpu on windows? 如果有人也可以提供此问题的链接,将不胜感激。提前谢谢。
答案 0 :(得分:2)
您似乎已将Visual Studio配置为使用.cl
编译nvcc
个文件。这是你应该为CUDA文件(.cu
)做的,但OpenCL内核源代码是在运行时编译的,不应该在应用程序构建时由任何东西编译。只需删除此配置选项,您就应该好了。
可能想要对.cl
文件执行的操作是将它们自动复制到应用程序二进制目录,以便应用程序可以在加载它们时轻松找到它们。这只是一个偏好问题。