首先聲明這是個很弱的問題,不過也可以給同仁們提個醒啊。。。
我的系統配置如下:
win7 64bit VS2010 CUDA 4.0.19
之前一直使用VS2010進行編譯都沒有出現問題。而最近需要使用java的cuda程序包包括 JCUDA和JOGL,
在測試例子JCudaVectorAdd過程中,在命令行需要使用nvcc將.cu文件編譯成.ptx 或是.cubin文件,但是總是出錯。
最開始的時候提示 nvcc cannot find cl.exe,查找相關問題後,將C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin,就是自己VS的安裝路徑。
但是最後的問題就變成nvcc cannot find a supported cl.exe version.
但是個人認爲在VS下可以編譯,那在命令行應該也可以編譯。於是糾結了好幾天,怎麼改都不成。後來一直在弄環境變量的問題,發現CUDA4.0\bin路徑也加進去了。但是發現cuda_path的環境變量確實CUDA3.2路徑。由於之前什麼原因並沒有取消安裝CUDA3.2。
然後發現是因爲CUDA3.2的路徑優先於CUDA4.0,於是將此路徑進行修改,刪除掉了CUDA3.2路徑。問題就解決了。