que nunca han oído hablar de Cuda antes, pero a partir de la documentación en línea, parece como si se supone X.cu que se recopilarán en Xo, por lo que tener helloWorld.cu y helloWorld. cpp no es una buena idea. Con su permiso voy a cambiar el nombre del "núcleo" helloKernel.cu, entonces esto debería funcionar:
NVCC = nvcc
helloWorld.o: helloWorld.cpp helloWorld.h
$(NVCC) -c %< -o [email protected]
helloKernel.o: helloKernel.cu
$(NVCC) -c %< -o [email protected]
helloWorld: helloWorld.o helloKernel.o
$(NVCC) %^ -o [email protected]
(. Tenga en cuenta que los espacios iniciales son pestañas)
Si funciona, intente una versión más pulido:
NVCC = nvcc
helloWorld.o: %.o : %.cpp %.h
helloKernel.o: %.o : %.cu
%.o:
$(NVCC) -c %< -o [email protected]
helloWorld: helloWorld.o helloKernel.o
$(NVCC) %^ -o [email protected]
Por favor, etiquetar sus preguntas relacionadas con maquillaje con la etiqueta [hacer]. Justificación: http://meta.stackexchange.com/questions/24030/why-do-they-specify-makefile-tag-instead-of-make/26567#26567 –