嘿有...所以我在这里使用VS2008,使用CUDA C编程。我安装了3.2工具包并正在工作。结构问题,CUDA C/C++和VS 2008
现在我的问题是,我有这样一个文件:
#ifndef _cuda_rng_cu_included_
#define _cuda_rng_cu_included_
#include <stdio.h>
static void HandleError(cudaError_t err,
const char *file,
int line) {
if (err != cudaSuccess) {
printf("%s in %s at line %d\n", cudaGetErrorString(err),
file, line);
exit(EXIT_FAILURE);
}
}
#define HANDLE_ERROR(err) (HandleError(err, __FILE__, __LINE__))
//some other struct
我从书CUDA通过实例验证码,所以它应该工作..但是当我击筑我得到这个错误(第一):
error C2065: 'cudaError_t' : undeclared identifier
,然后错误的海啸被附加,像uint2
类型不被发现和变量不被声明。
可能是什么问题? cudaError_t在$(CUDA_PATH_V3_2)\ include中定义,并且此路径位于我所需的include目录中。
文件属性设置喜欢:Tool: CUDA Runtime API
我把那的#ifndef,因为我还没有想出如何使用CUDA C.像普通C之间的连接++和工作,如果我有两个一个struct CUDA C(__global__
和` __device__
)以及一些常规方法。如果我将这个文件命名为.cu
,那么在使用此结构的普通C++代码中会打印一条错误消息,说明它未被声明。
我试图手动包含driver_types.h
和其他大量的头文件,但编译器找不到它们。
对不起,如果我不清楚,我很困。
我看到那篇文章一次,我忘了在这个新项目中做。但仍然无效。我现在可以包含cuda.h,cuda_runtime.h和其他,并且未声明的标识符会消失。但是现在我得到另一个错误:`'threadIdx':未声明的标识符`。他妈的..感觉就像我应该在Linux上这样做... – hfingler 2010-11-23 18:43:27