Tensorflow:ImportError:libcudnn.so.7:无法打开共享对象文件:没有这样的文件或目录

shi*_*k01 12 python python-3.x tensorflow cudnn

我最近使用pip安装了tensorflow-gpu.但是当我导入它时,它会给出以下错误:

ImportError: libcudnn.so.7: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我已经完成了与此问题相关的stackoverflow的所有答案,但它们都没有为我工作.

libcudnn.so.7存在于以下目录/ usr/local/cuda/lib64和/usr/local/cuda-9.0/lib64中.

另外,我在.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}}
Run Code Online (Sandbox Code Playgroud)

请帮我解决这个问题

Mat*_*gro 5

您以错误的方式设置了LD_LIBRARY_PATH,我建议采用这种方式(这是一种标准):

export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
Run Code Online (Sandbox Code Playgroud)


bie*_*ltb 5

您可能需要下载并安装 NVIDIA cuDNN。

https://developer.nvidia.com/rdp/cudnn-download下载 (如果没有,则必须注册一个帐户才能下载)。运行时版本通常比开发者版本更稳定。


Sri*_*Sri 5

重新安装 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,这修复了所有错误并且一切正常。

祝你好运!

  • 虽然此链接可以回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能会变得无效。- [来自评论](/review/low-quality-posts/24909170) (2认同)