在Ubuntu上,我以前安装了CUDA 6.5,并希望升级到CUDA 7.0。因此,我删除了/usr/local/cud-6.5的目录,并将CUDA 7.0安装到/usr/local/cud-7.0中。然后,我将/usr/local/cuda上的符号链接更改为指向/usr/local/cuda-7.0。在我的bash.rc文件中,我还相应地更新了环境变量:
export CUDA_HOME=/usr/local/cuda-7.0
export LD_LIBRARY_PATH=${CUDA_HOME}/lib64
export PATH=${CUDA_HOME}/bin:${PATH}如果我输入"nvcc -版本“,那么我将得到如下预期:
Cuda compilation tools, release 7.0, V7.0.27但是,我现在正在编译一些使用CUDA的代码(确切地说,是Caffe深度学习库),我收到了以下错误消息:
error while loading shared libraries: libcudart.so.6.5: cannot open shared object file: No such file or directory因此,出于某种原因,它仍然在寻找CUDA 6.5图书馆,而不是CUDA 7.0图书馆。为什么会这样呢?我如何告诉编译器查找7.0库?我在我正在编译的源代码中找不到对libcudart.so.6.5的任何引用,所以CUDA编译器本身正在寻找错误的版本。
发布于 2015-07-08 14:54:29
显然,您没有遵循正确的卸载方法;请注意,如果您安装的是不同的工具包版本,它们之间就不会有任何冲突,您可以保留这两个版本。在安装过程中,将要求您将/usr/local/cuda-x.y链接到/usr/local/cuda。检查Cuda7.0在LINUX上起步的2.6节。
如上述链接所述,卸载的正确方法是根据安装的方式(即run方法或rpm方法)使用下面的命令:
$ sudo /usr/local/cuda-X.Y/bin/uninstall_cuda_X.Y.pl
Use the following command to uninstall a Driver runfile installation:
$ sudo /usr/bin/nvidia-uninstall
Use the following commands to uninstall a RPM/Deb installation:
$ sudo apt-get --purge remove <package_name> # Ubuntu
$ sudo yum remove <package_name> # Fedora/Redhat/CentOS
$ sudo zypper remove <package_name> # OpenSUSE/SLES我希望它对您有用;我不知道Caffe深度学习库,但我假设您以前没有通过提供cuda 6.5编译器及其库的路径来配置它。如果是这样的话,首先尝试正确卸载之前的cuda 6.5,然后从头开始配置库,然后制作它。
https://stackoverflow.com/questions/31294255
复制相似问题