在Netbeans中编译简单的新CUDA项目

在Netbeans中编译简单的新CUDA项目,netbeans,cuda,Netbeans,Cuda,我已在Netbeans中创建了新的C++应用程序,并希望编译简单的CUDA,如: #include <cstdlib> // includes, system #include <stdio.h> // includes CUDA Runtime #include <cuda_runtime.h> // includes help #include <helper_cuda.h> #include <helper_functions.h&

我已在Netbeans中创建了新的C++应用程序,并希望编译简单的CUDA,如:

#include <cstdlib>
// includes, system
#include <stdio.h>

// includes CUDA Runtime
#include <cuda_runtime.h>

// includes help
#include <helper_cuda.h>
#include <helper_functions.h> // helper utility functions 

/*
 * 
 */

__global__ void add(int* a , int* b, int* c){
    *c=*a+*b;
}

int main(int argc, char** argv) {
    int a,b,c; //host copies of a,b,c
    int* d_a,*d_b,*d_c; //device copies of a,b,c
    int size=sizeof(int);

    //allocate space for device copies of a,b,c
    cudaMalloc((void**)&d_a,size);
    cudaMalloc((void**)&d_b,size);
    cudaMalloc((void**)&d_c,size);

    //setup input
    a=2;
    b=7;

    //copy inputs to device
    cudaMemcpy(d_a,&a,size,cudaMemcpyHostToDevice);
    cudaMemcpy(d_b,&b,size,cudaMemcpyHostToDevice);

    //launch add() kernel on GPU device
    add<<<1,1>>>(d_a,d_b,d_c);


    return 0;
}
#包括
//包括,系统
#包括
//包括CUDA运行时
#包括
//包括帮助
#包括
#include//helper实用程序函数
/*
* 
*/
__全局无效添加(int*a、int*b、int*c){
*c=*a+*b;
}
int main(int argc,字符**argv){
int a,b,c;//托管a,b,c的副本
int*d_a,*d_b,*d_c;//a,b,c的设备副本
int size=sizeof(int);
//为a、b、c的设备副本分配空间
Cudamaloc((空隙**)和d_a,尺寸);
Cudamaloc((空隙**)和d_b,尺寸);
Cudamaloc((空隙**)和d_c,尺寸);
//设置输入
a=2;
b=7;
//将输入复制到设备
cudaMemcpy(d_a和a、尺寸、cudaMemcpy HOSTTODEVICE);
cudaMemcpy(d_b和b,尺寸,cudaMemcpyHostToDevice);
//在GPU设备上启动add()内核
加上(d_a、d_b、d_c);
返回0;
}
当我使用IDE构建时,它就是这样做的:

“/usr/bin/make”-f nbproject/Makefile-Debug.mk QMAKE=子项目= .build conf make[1]:输入目录
/root/NetBeansProjects/my_CUDA_1'/usr/bin/make“-f
nbproject/Makefile-Debug.mk dist/Debug/GNU-Linux-x86/libmy_cuda_1.a
make[2]:输入目录
/root/NetBeansProjects/my_CUDA_1'mkdir -p build/Debug/GNU-Linux-x86 rm-f build/Debug/GNU-Linux-x86/cudaMain.o.d/usr/local/cuda-5.0/bin/nvcc
-c-g-I/usr/local/cuda-5.0/include-I/usr/local/cuda-5.0/samples/common/inc-MMD-MP-MF build/Debug/GNU-Linux-x86/cudaMain.o.d-o build/Debug/GNU-Linux-x86/cudaMain.o cudaMain.cu nvcc致命: 未知选项“MMD”

因此,我可以通过不使用以下选项从命令行手动编译来避免此错误:

me@comp:/root/NetBeansProjects/my_CUDA_1# /usr/local/cuda-5.0/bin/nvcc-m64-c-g-I/usr/local/cuda-5.0/include -I/us r/local/cuda-5.0/samples/common/inc-o build/Debug/GNU-Linux-x86/cudaMain.o cudaMain.cu cudaMain.cu(28): 警告:变量“c”已声明,但从未被引用

cudaMain.cu(28):警告:变量“c”已声明,但从未声明 参考

me@comp:/root/NetBeansProjects/my_CUDA_1#ls


如何,在Netbeans中配置什么以在IDE中获得这些设置?

Project->Properties->Build 在“专家”选项卡上:启用进行依赖项检查->取消选中此项