运行TensorFlow程序时的ImportError:libcudnn

时间:2017-02-01 22:35:02

标签: tensorflow

尝试运行TensorFlow程序时遇到以下错误:

ImportError: libcudnn.Version: cannot open shared object file: No such file or director

8 个答案:

答案 0 :(得分:39)

只需download cuDNN 5.1并按照步骤(在Ubuntu 16.04上测试,CUDA工具包8.0)

$ tar xvzf cudnn-8.0-linux-x64-v5.1-ga.tgz
$ sudo cp -P cuda/include/cudnn.h /usr/local/cuda/include
$ sudo cp -P cuda/lib64/libcudnn* /usr/local/cuda/lib64
$ sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

现在设置路径变量

$ vim ~/.bashrc

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64"
export CUDA_HOME=/usr/local/cuda

并完成了

有关详细信息,请查看此site

答案 1 :(得分:10)

看来TensorFlow现在支持cudNN 6.0。我在使用cudNN 5.1时遇到了错误。

使用TensorFlow版本1.3.0。

如果你正在

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

尝试使用6.0

答案 2 :(得分:6)

此时Tensorflow不支持cuDNN 6.如果您的错误是找不到libcudnn.so.5并且您只安装了提供libcudnn.so.6的cuDNN 6,则您必须安装cuDNN 5直到引入cuDNN 6支持。您可以在Tensorflow Github页面上找到open bug report,以了解他们何时开始支持cuDNN 6。

答案 3 :(得分:4)

我遇到了这个问题。在我的情况下,我的日食给出了这个错误,但是tensorflow在终端中运行顺利。 因此,在cuDNN安装或粘贴/usr/local/cuda/lib64/usr/local/cuda/include中与cudNN相关的文件后,我发现命令sudo ldconfig -v也必须在终端中执行。

之后它应该有用。

假设已经按照NVIDIA的CUDA安装程序中的规范设置了以下环境变量:LD_LIBRARY_PATHPATHCUDA_HOME

答案 4 :(得分:2)

您可能没有安装正确版本的cuDNN。

要确定cuDNN的正确版本,请参阅NVIDIA要求以支持GPU运行TensorFlow。

答案 5 :(得分:2)

确保将$LD_LIBRARY_PATH环境变量设置为正确的路径。

来自cuDNN Install Guide

ALL PLATFORMS

Extract the cuDNN archive to a directory of your choice, referred to below as <installpath>.
Then follow the platform-specific instructions as follows.

LINUX

cd <installpath>
export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH

Add <installpath> to your build and link process by adding -I<installpath> to your compile
line and -L<installpath> -lcudnn to your link line.

OS X

cd <installpath>
export DYLD_LIBRARY_PATH=`pwd`:$DYLD_LIBRARY_PATH

Add <installpath> to your build and link process by adding -I<installpath> to your compile
line and -L<installpath> -lcudnn to your link line.

WINDOWS

Add <installpath> to the PATH environment variable.

In your Visual Studio project properties, add <installpath> to the Include Directories 
and Library Directories lists and add cudnn.lib to Linker->Input->Additional Dependencies.

答案 6 :(得分:1)

我能够通过将cudNN安装从cudNN 6.0更改为cudNN 5.1来解决问题。 cudNN 6.0的文件为libcudnn.so.6,而cudNN 5.1的文件为libcudnn.so.5。

答案 7 :(得分:0)

https://developer.nvidia.com/rdp/cudnn-download下载并安装cuDNN

对于ubuntu 18.04和cuda 10.1:

sudo dpkg -i libcudnn7_7.5.0.56-1+cuda10.1_amd64.deb