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

时间:2018-06-25 08:49:46

标签: python python-3.x tensorflow cudnn

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

ImportError: libcudnn.so.7: cannot open shared object file: No such file or directory

我已经查看了与该问题相关的所有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}}

请帮助我解决这个问题

5 个答案:

答案 0 :(得分:3)

您以错误的方式设置了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

答案 1 :(得分:0)

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

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

答案 2 :(得分:0)

您在.bashrc文件中添加以下路径:

export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64:$LD_LIBRARY_PATH


export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

答案 3 :(得分:0)

FWIW感兴趣,我创建了一个外壳script,该外壳在Debian中安装了不同的CUDA版本,可以轻松地移植到Ubuntu:

答案 4 :(得分:-1)

原因是缺少某些库。 尝试安装

sudo apt install libcudnn7