2011-02-16 49 views
0

我在Linux上编写了一个简单的“无所事事”OpenCL应用程序(使用C++,但使用C API)以获取有关OpenCL速度的一些数据。它编译好,运行没有错误。我没有支持OpenCL的显卡,但我需要在GPU上进行测试。我试图使用NVIDIA CUDA Toolkit提供的OpenCL实现在我的朋友的Windows 7 64位计算机上构建应用程序。无法在Windows上构建OpenCL程序

当我尝试链接到CUDA \ x64中的OpenCL.lib文件时,我得到了程序内每个OpenCL调用的未定义引用(使用标准C API)。当我链接到system32目录中的OpenCL.dll时,会发生同样的事情。如果我链接到CUDA工具包附带的win32库,我不会收到错误,但是OpenCL无法获取平台。链接时所有未定义的引用在符号名称的末尾都有一个@ 20或@ 46或一些随机数。我不熟悉Windows开发知道如何解决这个问题。可能是我的问题?

我喜欢任何新手。感谢任何答案!

回答

0

我相信你会想要使用不会给链接错误的库。 您遇到的其他错误是因为您将不匹配的代码链接在一起。然后专注于试图确定你的平台标识符应该是什么。 我觉得你很接近但放弃了太快

+0

谢谢,我会尽力做到这一点,但你究竟是什么意思的“不匹配的代码”? – CheedleBoy 2011-02-16 23:55:33