在makefile中编译cuda文件错误
我制作了一个 makefile 来编译我的文件:
CFLAGS = -O3 -Wall -I /usr/local/cuda/include/
NVCCFLAGS = -O3 -arch sm_20
LDFLAGS = -O3 -L/usr/local/cuda/lib64 -lcudart
EXE = runAPP
app.o:app.cu
$(NVCC) $(NVCCFLAGS) -c $< -o $(CPPFLAGS) $(LIB_PATH) $(LDFLAGS) $@
$(EXE): app.o
$(NVCC) $(NVCCFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $(CPPFLAGS) $(LIB_PATH) app.o \
-lANN_char -lz
cp $@ ../bin
但我遇到了这个问题:
app.cpp:26:26:错误:cuda_runtime.h:没有这样的文件或目录 app.cpp:27:18:错误:cuda.h:没有这样的文件或目录
这就是我将它们包含在app.cpp中的方式:
#include <cuda.h>
#include <cuda_runtime.h>
为什么会出现这个问题?
我在谷歌上搜索了一些东西,他们说app.cpp必须始终是app.cu,是真的吗?
提前致谢。
I have made a makefile in order to compile my files:
CFLAGS = -O3 -Wall -I /usr/local/cuda/include/
NVCCFLAGS = -O3 -arch sm_20
LDFLAGS = -O3 -L/usr/local/cuda/lib64 -lcudart
EXE = runAPP
app.o:app.cu
$(NVCC) $(NVCCFLAGS) -c lt; -o $(CPPFLAGS) $(LIB_PATH) $(LDFLAGS) $@
$(EXE): app.o
$(NVCC) $(NVCCFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $(CPPFLAGS) $(LIB_PATH) app.o \
-lANN_char -lz
cp $@ ../bin
But I got this problem:
app.cpp:26:26: error: cuda_runtime.h: No such file or directory
app.cpp:27:18: error: cuda.h: No such file or directory
This is how I include them in the app.cpp:
#include <cuda.h>
#include <cuda_runtime.h>
Why is this problem?
I search something on google, they said that the app.cpp must be always app.cu, is it true?
Thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果你的 makefile 有:
CPPFLAGS 应该扩展到什么都没有;尝试将其更改为 CFLAGS,或将 CFLAGS 更改为 CPPFLAGS。
If your makefile, you have:
CPPFLAGS should be expanding to nothing; try changing it to CFLAGS, or change CFLAGS to CPPFLAGS.