2013-09-26 6 views
0

я получил в том же каталоге, 3 файлов:Невозможно сделать программу Cuda

hellomake.cu

#include<hellofunc.h> 
int main(){ 
myPrintHelloMake(); 
return 0; 
} 

hellofunc.c

#include<stdio.h> 
#include<stdlib.h> 

void myPrintHelloMake(void){ 
printf("Hello dummy!\n"); 
return; 
} 

hellofunc.h

void myPrintHelloMake(void) 

Makefile

CC=/usr/local/cuda-5.5/bin/nvcc 
CFLAGS=-I. 

hellomake: hellomake.cu hellofunc.c 
     $(CC) -o hellomake hellomake.cu hellofunc.c -I. 

Но когда я бегу через терминал сделать его распечатывает:


/usr/local/cuda-5.5/bin/nvcc -o hellomake hellomake. cu hellofunc.c -I. /tmp/tmpxft_000013bf_00000000-14_hellomake.o: В функции main': tmpxft_000013bf_00000000-3_hellomake.cudafe1.cpp:(.text+0x5): undefined reference to myPrintHelloMake()» collect2: л.д. возвращается 1 Статус выхода Марка: * [hellomake] Ошибка 1


Что может быть проблема?

ответ

3

Вы можете изменить имя файла hellofunc.c на номер hellofunc.cpp.

Если имя файла не может быть изменено, вы можете найти дополнительную информацию о том, как вызывать функции C в коде на C++.

+0

Спасибо .cpp решил проблему! – user2424276

0

Вы должны изменить название hellofunc.c на hellofunc.cu. Вы также можете использовать #include "hellofunc.h".

Смежные вопросы