求助,CUDA编译出错

我想在本地编译CUDA程序,而非直接使用CUDA例程。
在vs2010中新建了cuda runtime项目。

我将例程中的源码拷贝到项目中,编译却出错了。
直接运行源码是不会出错的。
错误截图如下:

[attach]2899[/attach]
我已设置了 CUDA Tookit Custom Dir

[attach]2901[/attach]

环境变量 $(CUDA_PATH) 的值是

[attach]2900[/attach]

不知是什么问题? 我可以通过更改 CUDA Tookit Custom Dir 到其他路径来避免第一个错误,
但是第二个错误却不知怎么回事?

谢谢!

亲。你确定贵机上下过并安装了glew了么?

(1)如果你非常确定,请考虑设置好你的addtional include directory和addtional linker input。
(2)如果没有,请立刻下载。
并将.h,.lib,等放到你认为方便的地方, .dll可以放到system32或者syswow64或者path中的任意路径或者你的exe所在地路径。,并设置好你的解决方案的头文件搜索路径,库文件搜索路径,链接器输入。

然后重新build.

非常确定有glew,因为我把glew的具体路径加进去后就没有第一个错误了,但是第二个错误还在。
不知道ddtional include directory应该怎么设置呢?
我的系统是64位的,会不会有什么影响呢?

我把所有需要的库和dll都考到$(CUDA_PATH)下了,之前的错误没了,但是又出现新的错误。。。
[attach]2902[/attach]

不知道怎么办啊版主。。

嗯嗯。第一步你做的对,然后你可以继续做下去:

(1)设置好你的Library路径,在其中加上你的实际的glew的lib文件的安装位置。
(2)然后设置additional linker input(addtional dependencies), 加入glew32.lib(或glew32s.lib)。
(3)然后你可以编译了。
(4)如果你要运行/调试,那么根据你(2)的选择不同,你有2种方式:
(5-1)如果你选择了连接glew32.lib, 那么你需要复制glew32.dll到你的exe所在路径,或者2楼回复里的那些路径之一。
(5-2)如果你选择了连接glew32s.lib, 那么这个无需,因为它是静态库,你可以直接运行。

如果你不知道这些设置的具体操作步骤,请继续看:

有鼠标的右键单击一次你的solution。
选择属性。
在属性里将鼠标轻轻移动到左侧的VC目录项,单击一下。
在右侧出现的Library Directories上,进行编辑,加入你的glew*.lib所在的目录,并确定。
将鼠标轻轻移动到左侧的linker上,单击鼠标的左键将其展开.
在展开的一些列条目里用目光寻找input项目, 并轻移鼠标到其上,点击左键一次。
编辑右侧出现的addtional dependencies项目。

以上操作完成点OK即可。
根据你用的VS版本和语言不同,部分文字可能有出入,但操作流程还是不错的。
:slight_smile:

多谢版主,已经解决了!

客气!

此外,需要说明的是,此问题和CUDA无关,但依然给予您回答。

:slight_smile: