C-为CUDA编译Hello World程序时的错误



我正在使用Ubuntu 12.10,并且已经成功安装了CUDA 5.0及其样品套件。我还在下面运行sudo apt-get install nvidia-cuda-toolkit是我的cuda Hello World程序:

#include <stdio.h>  /* Core input/output operations                         */
#include <stdlib.h> /* Conversions, random numbers, memory allocation, etc. */
#include <math.h>   /* Common mathematical functions                        */
#include <time.h>   /* Converting between various date/time formats         */
#include <cuda.h>   /* CUDA related stuff                                   */

__global__ void kernel(void) {
}
/* MAIN PROGRAM BEGINS */
int main(void) {
  /* Dg = 1; Db = 1; Ns = 0; S = 0 */
  kernel<<<1,1>>>();
  /* PRINT 'HELLO, WORLD!' TO THE SCREEN */
  printf("n  Hello, World!nn");
  /* INDICATE THE TERMINATION OF THE PROGRAM */
  return 0;
}
/* MAIN PROGRAM ENDS */

当我用 nvcc -g hello_world_cuda.cu -o hello_world_cuda.x

编译时发生以下错误
/tmp/tmpxft_000033f1_00000000-13_hello_world_cuda.o: In function `main':
/home/adarshakb/Documents/hello_world_cuda.cu:16: undefined reference to `cudaConfigureCall'
/tmp/tmpxft_000033f1_00000000-13_hello_world_cuda.o: In function `__cudaUnregisterBinaryUtil':
/usr/include/crt/host_runtime.h:172: undefined reference to `__cudaUnregisterFatBinary'
/tmp/tmpxft_000033f1_00000000-13_hello_world_cuda.o: In function `__sti____cudaRegisterAll_51_tmpxft_000033f1_00000000_4_hello_world_cuda_cpp1_ii_b81a68a1':
/tmp/tmpxft_000033f1_00000000-1_hello_world_cuda.cudafe1.stub.c:1: undefined reference to `__cudaRegisterFatBinary'
/tmp/tmpxft_000033f1_00000000-1_hello_world_cuda.cudafe1.stub.c:1: undefined reference to `__cudaRegisterFunction'
/tmp/tmpxft_000033f1_00000000-13_hello_world_cuda.o: In function `cudaError cudaLaunch<char>(char*)':
/usr/lib/nvidia-cuda-toolkit/include/cuda_runtime.h:958: undefined reference to `cudaLaunch'
collect2: ld returned 1 exit status

我还确保我使用GCC和G 版本4.4(AS 4.7 CUDA存在一些问题)

我认为,这些链接会帮助您。

开发人员驱动程序安装的视频演示

使用相同的命令行安装工具包和SDK。

每次打开终端时,您需要更改目录。这些说明是在Linux安装的第11页中给出的

在一切之前,您需要从开发人员页面下载.lun文件。

相关内容

最新更新