在linux中编译CUDA代码,获取错误:cutil_inline.h:没有这样的文件或目录
代码是在windows中开发的,但是当我在linux下使用在linux中编译CUDA代码,获取错误:cutil_inline.h:没有这样的文件或目录,linux,path,cuda,Linux,Path,Cuda,代码是在windows中开发的,但是当我在linux下使用nvcc编译代码时,它给出了错误: cutil_inline.h:没有这样的文件或目录 我的机器中的路径是: # User specific aliases and functions export PATH=/usr/local/cuda/bin:/usr/local/NVIDIA_GPU_Computing_SDK:$PATH export LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/lo
nvcc
编译代码时,它给出了错误:
cutil_inline.h:没有这样的文件或目录
我的机器中的路径是:
# User specific aliases and functions
export PATH=/usr/local/cuda/bin:/usr/local/NVIDIA_GPU_Computing_SDK:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/NVIDIA_GPU_Computing_SDK:$LD_LIBRARY_PATH
缺少的文件cutil_inline.h
已在包“NVIDIA_GPU_Computing_SDK”中
我怎样才能解决这个问题
您的友好回复对我来说非常重要。此处不适用路径
和LD\u库路径
环境变量。您需要修改linux编译命令(使用nvcc
)以包含一个编译器开关,告诉编译器在哪里可以找到cutil\u inline.h
文件:
nvcc -I/path/to/cutil_inline.h/file (....remainder of compile command line)
您可能还必须指定其他include path(-I
)开关以及库和库路径开关(-l
和-l
)来告诉链接器在哪里可以找到合适的cutil库。(路径PATH
和LD_LIBRARY_PATH
在这里也不适用。)您可能希望查看一些CUDA示例中包含的make文件,以了解相关的cutil头文件和库是如何正确引用的。嗨,罗伯特·克罗维拉,谢谢您的友好回复。我使用了“nvcc-I/path/to/cutil_inline.h/file lbm.cu-lm”,但得到与“cutil_inline.h:没有这样的文件或目录”相同的错误。“我给的那条路是假的。你应该把正确的目录路径放在那里。请编辑您的问题以显示:1。您当前使用的完整的nvcc
命令行2。到cutil_inline.h
file1.nvcc-arch=sm_20 lbm.cu-o main 2./usr/local/NVIDIA_GPU_Computing_SDK/C/common/inc/cutil_inline.h的完整目录路径。然后使用这个nvcc命令行:nvcc-arch=sm_20-I/usr/local/NVIDIA_GPU Computing_SDK/C/common/inc lbm.cu-o main
,正如我提到的,您可能需要包括一些额外的开关,如-L/usr/local/NVIDIA\u GPU\u Computing\u SDK/C/common/lib-lcutil
或类似的东西[fanshiwei@meresgpumrt\U lbm\U gpu]$nvcc lbm.cu-I/usr/local/NVIDIA_GPU_Computing_SDK/CUDALibraries/common/inc-lm包含在lbm.cu:15:lbm_kernel.h:52:8文件中:警告:在#endif指令/usr/local/NVIDIA_GPU_计算_SDK/CUDALibraries/common/inc/cutil_inline_runtime.h(329)末尾的额外令牌:错误:未定义标识符“CURAND_STATUS\u DOUBLE\u PRECISION”