компиляция файла cuda в ошибке makefile - PullRequest
3 голосов
/ 02 ноября 2011

Я сделал make-файл для компиляции моих файлов:

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>

Почему эта проблема?

Я что-то ищу в Google, они сказали, что app.cpp всегда должен быть app.cu, это правда?

Заранее спасибо.

1 Ответ

4 голосов
/ 02 ноября 2011

Если ваш make-файл, у вас есть:

<strong>CFLAGS</strong> = -O3 -Wall -I /usr/local/cuda/include/ NVCCFLAGS = -O3 -arch sm_20 LDFLAGS = -O3 -L/usr/local/cuda/lib64 -lcudart EXE = runAPP</p> <p>app.o:app.cu $(NVCC) $(NVCCFLAGS) -c $< -o <strong>$(CPPFLAGS)</strong> $(LIB_PATH) $(LDFLAGS) $@

CPPFLAGS должен расширяться до нуля; попробуйте изменить его на CFLAGS или замените CFLAGS на CPPFLAGS.

...