Makefile 使用mingw32的windows 7上的OpenCL/CL.h错误

Makefile 使用mingw32的windows 7上的OpenCL/CL.h错误,makefile,opencl,mingw32,Makefile,Opencl,Mingw32,我正试图在mingw32中使用以下命令编译我的OpenCL应用程序: mingw32 gcc-o平台c 但我收到了这个错误: CL/CL.h无此类文件或目录 我在网上和这个网站上搜索了很多次,但都没有找到好的答案。 我做了所有的工作,但还是会出错。 我使用AMD Radeon HD 5470,并在win 7上安装了最新的catalyst驱动程序和AMD应用程序SDK 2.8 我已经安装了VS 2012 在我的代码中,我使用了几个状态,希望能够工作,但是。。。。它仍然会犯同样的错误 我还在comp

我正试图在mingw32中使用以下命令编译我的OpenCL应用程序: mingw32 gcc-o平台c

但我收到了这个错误: CL/CL.h无此类文件或目录

我在网上和这个网站上搜索了很多次,但都没有找到好的答案。 我做了所有的工作,但还是会出错。 我使用AMD Radeon HD 5470,并在win 7上安装了最新的catalyst驱动程序和AMD应用程序SDK 2.8 我已经安装了VS 2012

在我的代码中,我使用了几个状态,希望能够工作,但是。。。。它仍然会犯同样的错误

我还在compile命令中使用了-I&-L,但它仍然会出错:CL/CL.h没有这样的文件或目录

我不知道如何使用生成文件来编译代码

我将非常感谢任何帮助我的人:mehdioraki59@yahoo.com

我的系统是:dell studio 1558

这是我非常简单的测试代码:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#ifdef MAC
#include <OpenCL/cl.h>
#else
#include <C:\Program Files (x86)\AMD APP\include\CL\cl.hpp>
//#include <CL/cl.h>    >>>>>>>  i manually disabled this line but there is still error
#endif
int main() {
cl_platform_id             *platforms;
cl_uint                    num_platforms;
cl_int                     i, err, platform_index = -1;
char*                      ext_data;
size_t                     ext_size;
err = clGetPlatformIDs(1, NULL, &num_platforms);
if(err < 0) {
perror("Couldn't find any platforms.");
exit(1);
}
free(platforms);
return 0;
}
#包括
#包括
#包括
#包括
#ifdef MAC
#包括
#否则
#包括
//#include>>>>>>>我手动禁用了此行,但仍有错误
#恩迪夫
int main(){
cl_平台_id*平台;
cl_uint num_平台;
cl_int i,err,platform_index=-1;
字符*外部数据;
尺寸/外部尺寸;
err=clGetPlatformIDs(1、NULL和num_平台);
如果(误差<0){
perror(“找不到任何平台”);
出口(1);
}
免费(月台);
返回0;
}

您需要将-I“C:\Program Files(x86)\AMD APP\include”添加到构建命令中,以告诉mingw32 gcc在哪里可以找到CL/CL.h。用这个,include这行应该可以正常工作。

我终于找到了答案,也谢谢你,奇比先生: 你的建议对我有多大帮助 我使用了这个make文件: 项目=qwerty\U mehdi CC=mingw32 gcc CFLAGS=-Wall LIB=-lOpenCL ifdef AMDAPPSDKROOT INC_DIRS=“$(AMDAPPSDKROOT)include” LIB_DIRS=“$(AMDAPPSDKROOT)LIB\x86” 其他的 ifdef NVSDKCOMPUTE_根目录 INC\u DIRS=“$(NVSDKCOMPUTE\u ROOT)\OpenCL\common\INC” LIB_DIRS=“$(NVSDKCOMPUTE_ROOT)\OpenCL\common\LIB\Win32” 恩迪夫 恩迪夫 美元(项目):qwerty.c $(CC)$(CFLAGS)-o$@$^-I$(INC_DIRS)-L$(LIB_DIRS)$(LIB)

并删除了这一行: #包括

在此之后,成功生成了.exe


在make file code行中,qwerty.c是我前面解释的代码。

谢谢。我做到了。但它仍然会犯同样的错误