当libcudnn我遇到尝试运行TensorFlow程序时出现以下错误:导入错误:运行TensorFlow程序
ImportError: libcudnn.Version: cannot open shared object file: No such file or director
当libcudnn我遇到尝试运行TensorFlow程序时出现以下错误:导入错误:运行TensorFlow程序
ImportError: libcudnn.Version: cannot open shared object file: No such file or director
您可能没有安装cuDNN的正确版本。
要确定cuDNN的正确版本,请参阅NVIDIA要求在支持GPU的情况下运行TensorFlow。
此时Tensorflow不支持cuDNN 6.如果你的错误是它找不到libcudnn.so.5
,而你只安装了cuDNN 6,它提供了libcudnn.so.6
,你需要安装cuDNN 5,直到引入cuDNN 6支持。有一个open bug report,您可以在Tensorflow Github页面上查看它们何时开始支持cuDNN 6.
我不确定要安装哪一个,所以我只是跟5.1一起去,因为这就是文档所说的。 Buuut的文档也表示使用cuda 7.x.当有太多版本的东西时,很难建立这些环境,并且文档有轻微的错误! http://developer2.download.nvidia.com/compute/machine-learning/cudnn/secure/v5.1/prod/doc/cudnn_install.txt?F3FJdd7MWqtI7nGkyMVGrQTBf7x4TpOQKPwjNxyLlD5Jm6wFHZvYyj6XLd47Vy0yxeGMLfH4CiaIPyQQk-FiC2gIB3y16u4Lc-4Vlh1CHgkCseXk76Z9AdsxYDiRmSlrrlbAgmx8lw6yy8hFhkSOmNd0U5zMiZ8HDZH_x7F34QLM2lWE。 –
我只是将所需的版本文件添加到安装路径并且它可以工作。直到他们支持cudnn 6这是我发现的最好的方法 –
@ user2918461你的链接已经死了/ – NightFantom
确保$LD_LIBRARY_PATH
环境变量设置为正确的路径。
所有平台
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.
我必须将LD_LIBRARY_PATH设置为
我遇到了这个问题。在我的情况下,我的日食给了这个错误,但是在终端中张量流畅地运行。 因此,在cuDNN安装或粘贴/usr/local/cuda/lib64
和/usr/local/cuda/include
中与cudNN相关的文件后,我发现命令sudo ldconfig -v
也必须在终端中执行。
之后,它应该工作。
这是假设一个已经设置以下环境变量按照通过NVIDIA的CUDA安装过程的规范:LD_LIBRARY_PATH
,PATH
,CUDA_HOME
尝试其他一切后,这终于为我工作。谢谢! –
只需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
尽管TensorFlow指令显式声明“确保您创建NVIDIA文档中所述的CUDA_HOME环境变量”。这一步很容易失败。如上所述,通过@ankit执行,所有将会膨胀。 在继续之前,不要忘记用'source〜/ .bashrc'重新加载新添加的env vars。 – Stacky
@empty从[这里]下载(https://developer.nvidia.com/compute/machine-learning/cudnn/secure/v5.1/prod_20161129/8.0/cudnn-8.0-linux-x64-v5.1-tgz ) –
该解决方案需要适应当前TensorFlow预期的cuDNN版本。截至2017年11月31日,它需要cuDNN 6.带有“导入张量流”的错误消息将指示所需的版本。例如,“ImportError:libcudnn.so.6:无法打开共享对象文件:没有这样的文件或目录”表示它期望libcudnn.so.6 –
我能够改变从cudNN 6.0我cudNN安装cudNN 5.1来解决问题。 cudNN 6.0具有文件libcudnn.so.6,而cudNN 5.1具有文件libcudnn.so.5。
看来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
正确!这是张量流安装指南中的一个错误(他们应该将推荐的cudnn更新为6,因为它不适用于5.1)。我浪费了好几个小时。 – ezfn
即使CUDA(8.0)和cudnn(5.1)的正确版本,这个错误使用PIP从https安装方法时,仍然发生://www.tensorflow.org/install/install_linux#installing_with_native_pip – mstreffo