我最近使用pip安装了tensorflow-gpu。但是当我导入它时,它给出了以下错误:
ImportError: libcudnn.so.7: cannot open shared object file: No such file or directory
我已经看过了stackoverflow所有关于这个问题的答案,但没有一个对我有用。
libcudn.so.7存在于以下目录/usr/local/cuda/lib 64和/usr/local/cuda-9.0/lib 64中。
另外,我在.bashrc文件中添加了以下路径:
export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64\${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64\${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
请帮我解决这个问题
7条答案
按热度按时间mqkwyuun1#
你设置LD_LIBRARY_PATH的方式错误,我建议你这样做(这是一种标准):
pdtvr36n2#
您可能需要下载并安装NVIDIA cuDNN。
从https://developer.nvidia.com/rdp/cudnn-download下载(如果没有,必须注册一个帐户才能下载)。运行时版本通常比开发者版本更稳定。
yquaqz183#
重新安装CudNN-7.0.5,(请确保您从下面的链接中选择正确的版本)为我修复了这个问题。您需要登录到您的Nvidia开发者帐户才能访问该链接。(如果您没有Nvidia帐户,请直接创建一个);
https://developer.nvidia.com/rdp/cudnn-archive
CudNN的安装说明; https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html
但我也遇到了以下错误;
加载的运行时CuDNN库:7.0.5但源代码编译为:7.4.2.如果是CuDNN 7.0或更高版本,则CuDNN库主版本和次版本需要匹配或具有更高的次版本。如果使用二进制安装,请升级CuDNN库。如果从源代码构建,请确保运行时加载的库与编译配置期间指定的版本兼容。
因此,我不得不再次下载并安装正确的CuDNN版本,我使用了上述错误消息中的信息并安装了CuDNN 7. 4. 2,这修复了所有错误,一切正常。
祝你好运!
hfsqlsce4#
在.bashrc文件中添加以下路径:
ix0qys7i5#
我创建了一个shell script,它在Debian中安装了不同的CUDA版本,可以很容易地移植到Ubuntu:
myzjeezk6#
我在Google Colab上安装MXNet时遇到了一个
libcudnn.so.7
错误。最终解决这个问题的是在其他一些步骤之后安装libcudinn7;这是我表演的主要部分我希望这能帮助其他像我一样在这种混乱中苦苦挣扎的人。我的具体需求是在Google Colab中降级Cuda;在写这篇文章的时候,它附带了11.8,但MXNet只支持旧版本。我正在遵循这个教程:https://aconcaguasci.blogspot.com/2019/12/setting-up-cuda-100-for-mxnet-on-google.html
我遵循了其中的大部分,包括:
pip install mxnet-cu100
的点,它将在import mxnet as mx
上失败,并显示"**OSError:libcudn.so.7:**无法打开共享对象文件:没有这样的文件或目录“”。!find / -iname libcudnn
只返回两个文件夹,/var/lib/dpkg/alternatives/libcudnn
和/etc/alternatives/libcudnn
。1.* * 为我修复的步骤**:我在这里深入研究了NVIDIA cuDNN Archives,发现了以下说明:
例如,对于Cuda 9.0和cuDNN 7.4.1:
我将Cuda版本
cuda9.0
替换为cuda10.0
并运行:我没有/无法运行libcudinn7-devel,因为它是“无法定位包”
在此之后,我可以
pip install mxnet-cu100==1.9.0
(MXNet for Cuda 10.0)。当然,nvcc --version
会报告Cuda 10.0。我终于能够运行import mxnet as mx
而不会得到任何“无法打开共享对象文件:..."错误。I validated it成功使用:输出:
我知道这是MXNet而不是TensorFlow,但这是一个
libcudnn.so.7
错误,我希望它能帮助其他遇到这个问题的人,至少是Google Colab。我最近找不到太多的支持,因此我遵循了我在顶部提到的教程。qlckcl4x7#
原因是一些图书馆不见了。尝试安装