VS2008没有编译cuda
问题描述:
总之,当我尝试在IDE内编译一个VS2008
项目时,它失败了,但是当我在命令提示符下使用相同的命令行时,它会编译。任何人都可以帮忙吗?VS2008没有编译cuda
详细
使用VS2008
与Cuda
工具包3.2。还安装了VS2010
。 在开始操作之前做了以下操作:steps。
- 添加自定义规则文件,该文件是:
C:\Program Files (x86)\NVIDIA GPU Computing Toolkit\CUDA\v3.2\extras\visual_studio_integration\rules
- 在项目的属性
linker->general
和cudart.lib
和cuda.lib
然后加入C:\Program Files (x86)\NVIDIA GPU Computing Toolkit\CUDA\v3.2\lib\x64
附加库目录额外的依赖。
请让我知道如果我失去了一些东西。
上CMD提示符的输出设定命令的是:
CUDA_BIN_PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v3.2\\bin
CUDA_INC_PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v3.2\\include
CUDA_LIB_PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v3.2\\lib\x64
CUDA_PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v3.2\
CUDA_PATH_V3_2=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v3.2\
糟糕,忘记了错误消息。
1>t.cu.obj : error LNK2019: unresolved external symbol [email protected] referenced in function "void __cdecl __cudaUnregisterBinaryUtil(void)" ([email protected]@YAXXZ)
1>t.cu.obj : error LNK2019: unresolved external symbol [email protected] referenced in function "enum cudaError __cdecl cudaLaunch<char>(char *)" ([email protected]@@[email protected]@[email protected])
1>t.cu.obj : error LNK2019: unresolved external symbol _cudaSetupArgume[email protected] referenced in function "void __cdecl __device_stub__Z12compute_sum4P6float4S0_S0_i(struct float4 *,struct float4 *,struct float4 *,int)" ([email protected]@[email protected]@[email protected])
1>t.cu.obj : error LNK2019: unresolved external symbol [email protected] referenced in function "void __cdecl __sti____cudaRegisterAll_47_tmpxft_00000ea8_00000000_8_t_compute_10_cpp1_ii_65ce9b46(void)" (?__sti____cudaRegister[email protected]@YAXXZ)
1>t.cu.obj : error LNK2019: unresolved external symbol [email protected] referenced in function "void __cdecl __sti____cudaRegisterAll_47_tmpxft_00000ea8_00000000_8_t_compute_10_cpp1_ii_65ce9b46(void)" (?__sti____cudaRegister[email protected]@YAXXZ)
1>t.cu.obj : error LNK2019: unresolved external symbol [email protected] referenced in function _main
1>t.cu.obj : error LNK2019: unresolved external symbol [email protected] referenced in function _main
1>t.cu.obj : error LNK2019: unresolved external symbol [email protected] referenced in function _main
1>t.cu.obj : error LNK2019: unresolved external symbol [email protected] referenced in function _main
1>t.cu.obj : error LNK2019: unresolved external symbol [email protected] referenced in function _main
1>t.cu.obj : error LNK2019: unresolved external symbol [email protected] referenced in function _main
1>t.cu.obj : error LNK2019: unresolved external symbol [email protected] referenced in function _main
1>t.cu.obj : error LNK2019: unresolved external symbol [email protected] referenced in function _main
1>t.cu.obj : error LNK2019: unresolved external symbol [email protected] referenced in function _main
1>D:\projects\cup1\Debug\cup1.exe : fatal error LNK1120: 14 unresolved externals
这是命令行:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v3.2\\bin\nvcc.exe" -gencode=arch=compute_10,code=\"sm_10,compute_10\" -gencode=arch=compute_20,code=\"sm_20,compute_20\" --machine 32 -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin" -Xcompiler "/EHsc /W3 /nologo /O2 /Zi /MT " -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v3.2\\include" -maxrregcount=32 --compile -o "Debug/t.cu.obj" t.cu
答
确保两两件事:
你已加入cudart.lib在附加输入。
到cudart.lib和cudartxx_xx_x.dll在VC++目录上设置的路径。还要将cuda dll的路径添加到系统的环境变量中。
这里有一个一步一步的指导:Run CUDA on Visual Studio 2008
请不要让我们猜测的错误消息。 –
是的,什么是错误信息? – jwdmsd