2012-02-28 95 views
0

我想包括cutil.h文件。CUDA - cutil.h:没有这样的文件错误尝试make文件

所以我尝试了以下make文件:

BINDIR = ./ # places compiled binary in current directory 
EXECUTABLE := test 

CCFILES := main.c 
CUFILES := cudaFunctions.cu 

# an ugly part - setting rootdir for CUDA SDK makefile 
# look for common.mk - I don't know where SDK installs it on Linux - 
# and change ROOTDIR accordingly 
ROOTDIR := /home/dan/NVIDIA_GPU_Computing_SDK/C/common 

include $(ROOTDIR)/../common/common.mk 

但是我得到两种类型的错误,当我转来运行它。第一个是权限:
的mkdir:无法创建目录`/释放“:权限被拒绝

所以我苏在去了一次又一次,并得到:
化妆:***没有规则,使目标obj/x86_64/release/cudaFunctions.cu.o', needed by。 /”。停止。

main.c文件最初是一个main.cu文件。我改变它遵循这个例子,但仍然是相同的错误。

任何想法,为什么我得到这个错误?

回答

3

common.mk并不意味着以这种方式工作 - 它只是用于CUDA SDK示例和库。

如果您只是想使用CUTIL库,那么应该使用公共目录中的makefile构建CUTIL。然后将CUTIL标题和库复制到您的项目中,#include并链接到它们,就像您使用任何库一样。

请注意,虽然CUTIL并不意味着在CUDA SDK之外使用 - 它只是SDK样本中使用的便利库。 NVIDIA不支持它。

+0

你是说我必须用make文件构建CUTIL,然后复制标题?我以为我可以链接头文件,如果我只是将它们复制为.h文件? – Dan 2012-03-01 22:47:44

+1

是否复制它们取决于您 - 您只需在编译时添加正确的“-I”路径以包含标题,并且必须为库位添加正确的'-L'路径,并且然后'-lcutil'链接库。这不是CUDA特定的,顺便说一句,它与任何C/C++库相同。 – harrism 2012-03-02 01:08:15

相关问题