【问题标题】:Cannot make Cuda program无法制作 Cuda 程序
【发布时间】:2013-10-02 16:28:15
【问题描述】:

我在同一个目录下有3个文件:

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)

生成文件

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 tomyPrintHelloMake()' collect2: ld 返回 1 个退出状态 make: * [hellomake] 错误 1


可能是什么问题?

【问题讨论】:

    标签: c++ c cuda makefile


    【解决方案1】:

    您可以将文件名 hellofunc.c 更改为 hellofunc.cpp

    如果文件名无法更改,您可以搜索有关如何在 C++ 代码中调用 C 函数的更多信息。

    【讨论】:

      【解决方案2】:

      您应该将hellofunc.c 的名称更改为hellofunc.cu。你也可以使用#include "hellofunc.h"

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-02-11
        • 2016-04-16
        • 2011-10-27
        • 2017-05-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-02-12
        相关资源
        最近更新 更多