Compilation 无法编译简单的CUDA示例

Compilation 无法编译简单的CUDA示例,compilation,cuda,nvidia,Compilation,Cuda,Nvidia,test.cu: #include <iostream> #include "book.h" __global__ void add( int a, int b, int *c ) { *c = a + b; } int main( void ) { int c; int *dev_c; HANDLE_ERROR( cudaMalloc( (void**)&dev_c, sizeof(int) ) ); add<<<

test.cu:

#include <iostream> 
#include "book.h"
__global__ void add( int a, int b, int *c ) {
    *c = a + b; 
}
int main( void ) {
    int c;
    int *dev_c;
    HANDLE_ERROR( cudaMalloc( (void**)&dev_c, sizeof(int) ) );
    add<<<1,1>>>( 2, 7, dev_c );
    HANDLE_ERROR( cudaMemcpy( &c, 
                              dev_c, 
                              sizeof(int), 
                              cudaMemcpyDeviceToHost ) );
    printf( "2 + 7 = %d\n", c );
    cudaFree( dev_c );
    return 0; 
}
我怎样才能告诉编译器book.h在哪里?我已在/usr/local/CUDA中安装了CUDA。 我需要制作Makefile吗?
我不熟悉CUDA和Makefile,所以这个问题可能看起来很琐碎。

我相信使用引号(“”)会告诉编译器查找与代码文件相同的目录,所以您可能希望尝试
而不是
“book.h


假定book.h是CUDA附带的文件。我以前从未使用过它。

book.h不是CUDA。它由“CUDA示例”用于一些简单的内容。
在本例中,需要提供错误句柄,您应该编写自己的代码来处理错误。


在这里你可以找到这本书。h代码:

book。h不是CUDA的一部分。它提供了“CUDA by example”一书中的示例。谢谢@Talonmes,我对这本书的印象是。h包含在CUDA中。我将尝试使用不同的示例。谢谢回复Liam,但CUDA似乎不包含“book.h”。
4.cu:2:18: fatal error: book.h: No such file or directory
compilation terminated.