我正在尝试设置一个需要 nvcc 的工具,但我无法做到。这是我目前得到的结果:
- 安装 CUDA 工具包
- 使用 nvcc -V 进行验证
输出:
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2013 NVIDIA Corporation
Build on Fri_Mar_14_19:30:01_PDT_2014
Cuda Compilation tools, release 6.0, V6.0.1
- CUDA的工具包安装在/usr/local/cuda-7.0下
- 链接到 /usr/local/cuda(该工具查看此目录)
当我运行 setup.py 时,我收到一些错误消息,最重要的错误消息是:
/bin/sh: /usr/local/cuda/bin/nvcc: cannot execture binary file: Exec format error
none
failed to execute command '/usr/local/cuda/bin/nvcc -V'
~跳过很多行
SystemError: Nvida's CUDA-compiler 'nvcc' can't be found.
尽管...
user@workgroup:~$ cd /usr/local/cuda
user@workgroup:~/usr/local/cuda$ ls
bin2c
computeprof
crt
cudafe
cudafe++
cuda-gdb
cuda-gdbserver
cuda-install-samples-7.0.sh
cuda-memcheck
cuobjdump
fatbinary
filehash
nsight
nvcc << yes its there!
nvcc.profile
nvdisasm
nvlink
nvprof
nvprune
nvvp
ptxas
test
uninstall_cuda_7.0.pl
那么这里出了什么问题?它显然已经安装好了,而且我(几乎)确定目录位置是正确的:\
PS:我尝试将 $PATH 添加到 .bashrc 文件中,但没有成功:
PATH=/usr/local/cuda-7.0/bin:$PATH
PATH=/usr/local/cuda/bin:$PATH
任何回复都将不胜感激!谢谢!
PPS:我正在使用 cygwin...
编辑类型输出 (#1):
user@workgroup~/usr/local/cuda/bin
type nvcc
nvcc is hashed (/cygdrive/c/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v6.0/bin/nvcc)
类型输出(#2-(几分钟后)我不知道我做了什么):
user@workgroup~/usr/local/cuda/bin
type nvcc
nvcc is /usr/local/cuda/bin/nvcc (same to cuda-7.0 directory, but the start of the output is a bit different(nvcc is hashed))
现在导致问题的主要错误是 nvcc 无法执行,这可能是什么原因造成的?
bash: /usr/local/cuda/bin/nvcc: cannot execture binary file: Exec format error
答案1
这似乎是由于尝试在 CYGWIN 下使用 Linux CUDA 工具包而导致的。在 Windows 平台上唯一可行的配置是将 Windows 工具包与受支持的 Visual Studio 版本一起使用。