因为我在Nvidia forums没有得到任何帮助(看我的帖子底部的线程),似乎我不是唯一一个struggeling类似的问题,我会试试这里。CUDA 4.0与Visual Studio 2010 CL编译器错误
我试着编译Cuda SDK 4.0的例子,以及非常好的tutorial by Ade Miller。但编译“.cu”文件将不起作用。
这是(示范)命令编译器调用:
"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v4.0\bin\nvcc.exe"
-gencode=arch=compute_10,code=\"sm_10,compute_10\" --use-local-env
--cl-version 2010 -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC bin\x86_amd64"
-I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v4.0\include" -G0
--keep-dir "x64\Debug" -maxrregcount=0 --machine 64 --compile -D_NEXUS_DEBUG
-g -Xcompiler "/EHsc /nologo /Od /Zi /MDd " -o "x64\Debug\Hello.cu.obj"
"D:\Code\CUDA\Test_Cuda_4_0\Test_Cuda_4_0\Hello.cu"
这是奇怪的错误消息,我总是得到。
nvcc fatal : Compiler 'cl' in PATH different than the one specified with -ccbin
编辑:要多一点精确:Visual Studio的只是告诉我的命令没有成功(“退出代码-1”) - >看到这个错误信息我必须调用命令我自己在命令行中。
1)为什么nvcc
关心环境变量中的路径与命令行选项指定的路径不同?如果它会照顾,这不会使命令行选项完全无用吗?
2)如何解决;)?
我用的Win7 64位,VS2010 SP1教授,和下面的NVIDIA版本: cudatoolkit_4.0.17_win_64 devdriver_4.0_winvista-win7_64_270.81_general gpucomputingsdk_4.0.19_win_64
非常感谢您的帮助!
win32目标构建好吗?您添加x64目标时做了哪些更改?公平的你不是唯一的,但许多人从未在同一个平台(包括我)看过这个,所以只是想获得更多的信息。 – Tom
Win32构建也不起作用。对于64位版本,我刚刚在配置属性(Cuda c/C++ - >目标机器平台)中添加了(参见Ade Miller的教程)'64 -bit(--machine 64)'。 –