我上个月刚开始学习C,这周我刚刚安装了Microsoft Visual Studio Express 2012;连同 AMD OpenCl SDK。我已经按照安装指南进行了搜索,一切似乎都已正确设置,但我仍然无法构建这个 OpenCl 示例。
我试图在我从 AMD 下载的 OpenCL Programming guide book 中运行一个示例。我一直遇到的问题是它似乎无法找到 OpenCl 头文件。
"Error C1083: Cannot open include file: 'CL/cl_platform.h': No such file or directory
c:\program files (x86)\amd app\include\cl\cl.h"
我检查了目录以确保,是的,文件在那里。
对于包含我有:#include<C:\Program Files (x86)\AMD APP\include\CL\cl.h
我已经尝试过了:
#include <Cl\cl.h>
和#include <Cl/cl.h>
VS 似乎唯一一次找到它是使用完整路径,或者是:
#include <cl.h>
否则我得到:
"Error C1083: Cannot open include file: 'CL\cl.h': No such file or directory"
这是我对环境路径变量的看法:
AMDAPPSDKROOT C:\Program Files (x86)\AMD APP
Path C:\Program Files (x86)\AMD APP\bin\x86_64
在附加包含目录下的 C/C++ 中的 VS 中:
$(AMDAPPSDKROOT)\include
在链接器附加库目录下:
$(AMDAPPSDKROOT)\lib\x86_64
在作为附加依赖项的输入下
OpenCL.lib
这是 C/C++ 的命令行输出:
/MP /GS /TC /Qpar /analyze /Wall /Gy /Zc:wchar_t /I"C:\Program Files (x86)\AMD APP\include" /ZI /Gm /Od /Fd"Debug\vc110.pdb" /fp:precise /D "_MBCS" /errorReport:prompt /WX- /Zc:forScope /RTC1 /GR /Gd /Oy- /MDd /openmp /Fa"Debug\" /EHsc /nologo /Fo"Debug\" /Ot /Fp"Debug\OpenClPractice.pch"
和链接器:
/OUT:"D:\Python\C\OpenClPractice\Debug\OpenClPractice.exe" /MANIFEST /NXCOMPAT /PDB:"D:\Python\C\OpenClPractice\Debug\OpenClPractice.pdb" /DYNAMICBASE "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" "OpenCL.lib" /DEBUG /MACHINE:X86 /INCREMENTAL /PGD:"D:\Python\C\OpenClPractice\Debug\OpenClPractice.pgd" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /ManifestFile:"Debug\OpenClPractice.exe.intermediate.manifest" /ERRORREPORT:PROMPT /NOLOGO /LIBPATH:"C:\Program Files (x86)\AMD APP\lib\x86_64" /TLBID:1
在我看来一切都很好,但显然不是,否则我不会遇到这个问题。如果有人可以提供帮助,那就太好了。
谢谢!