我正在从源代码构建TensorFlow.构建似乎成功; 但是,当我的TensorFlow程序调用时import tensorflow
,会出现以下一个或两个错误:
ImportError: libcudart.so.8.0: cannot open shared object file: No such file or directory
ImportError: libcudnn.5: cannot open shared object file: No such file or directory
小智 62
首先,出现以下错误:
ImportError:libcudart.so.8.0:无法打开共享对象文件:没有这样的文件或目录
确保你在你安装cuda包的路径中LD_LIBRARY_PATH
包含你的lib64
目录.你可以通过添加export
一行代码来完成.bashrc
.对于奥马尔来说,它看起来如下:
我修复此问题只是将cuda路径添加到我的.bashrc中
export LD_LIBRARY_PATH=/usr/local/cuda/lib64/
对我来说,我不得不做Omar的路线,
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64/
因为我有两个涉及cuda的目录(可能不是最好的).
其次,你确定你安装了cuDNN吗?请注意,这与常规cuda包不同.您需要注册,然后从以下页面下载并安装软件包:https: //developer.nvidia.com/cudnn
第三,我有同样的问题:
ImportError:libcudnn.5:无法打开共享对象文件:没有这样的文件或目录
事实证明libcudnn.5
我/usr/local/cuda/lib64
或/usr/local/cuda-8.0/lib64
目录中没有.但是,我确实有一个libcudnn.so.6.*
文件.为了解决这个问题,我创建了一个软链接:
ln -s libcudnn.so.6.* libcudnn.so.5
Run Code Online (Sandbox Code Playgroud)
在我的/usr/local/cuda/lib64
目录中.现在一切都适合我.如果您已经拥有cuDNN
,您的目录可能会有所不同,并且您的目录libcudnn.so.6.*
可能是不同的版本,因此请检查.
Goi*_*Way 41
我遇到了同样的问题
In [1]: import tensorflow
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
/usr/local/lib/python3.5/site-packages/tensorflow/python/pywrap_tensorflow.py in <module>()
40 sys.setdlopenflags(_default_dlopen_flags | ctypes.RTLD_GLOBAL)
---> 41 from tensorflow.python.pywrap_tensorflow_internal import *
42 from tensorflow.python.pywrap_tensorflow_internal import __version__
/usr/local/lib/python3.5/site-packages/tensorflow/python/pywrap_tensorflow_internal.py in <module>()
27 return _mod
---> 28 _pywrap_tensorflow_internal = swig_import_helper()
29 del swig_import_helper
/usr/local/lib/python3.5/site-packages/tensorflow/python/pywrap_tensorflow_internal.py in swig_import_helper()
23 try:
---> 24 _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
25 finally:
/usr/local/lib/python3.5/imp.py in load_module(name, file, filename, details)
241 else:
--> 242 return load_dynamic(name, filename, file)
243 elif type_ == PKG_DIRECTORY:
/usr/local/lib/python3.5/imp.py in load_dynamic(name, path, file)
341 name=name, loader=loader, origin=path)
--> 342 return _load(spec)
343
ImportError: libcudnn.so.5: cannot open shared object file: No such file or directory
During handling of the above exception, another exception occurred:
ImportError Traceback (most recent call last)
<ipython-input-1-a649b509054f> in <module>()
----> 1 import tensorflow
/usr/local/lib/python3.5/site-packages/tensorflow/__init__.py in <module>()
22
23 # pylint: disable=wildcard-import
---> 24 from tensorflow.python import *
25 # pylint: enable=wildcard-import
26
/usr/local/lib/python3.5/site-packages/tensorflow/python/__init__.py in <module>()
49 import numpy as np
50
---> 51 from tensorflow.python import pywrap_tensorflow
52
53 # Protocol buffers
/usr/local/lib/python3.5/site-packages/tensorflow/python/pywrap_tensorflow.py in <module>()
50 for some common reasons and solutions. Include the entire stack trace
51 above this error message when asking for help.""" % traceback.format_exc()
---> 52 raise ImportError(msg)
53
54 # pylint: enable=wildcard-import,g-import-not-at-top,unused-import,line-too-long
ImportError: Traceback (most recent call last):
File "/usr/local/lib/python3.5/site-packages/tensorflow/python/pywrap_tensorflow.py", line 41, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "/usr/local/lib/python3.5/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "/usr/local/lib/python3.5/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "/usr/local/lib/python3.5/imp.py", line 242, in load_module
return load_dynamic(name, filename, file)
File "/usr/local/lib/python3.5/imp.py", line 342, in load_dynamic
return _load(spec)
ImportError: libcudnn.so.5: cannot open shared object file: No such file or directory
Failed to load the native TensorFlow runtime.
See https://www.tensorflow.org/install/install_sources#common_installation_problems
for some common reasons and solutions. Include the entire stack trace
above this error message when asking for help.
Run Code Online (Sandbox Code Playgroud)
我已经在它需要的时候安装了cudnn 6.0 libcudnn.so.5
,显然它无法找到libcudnn.so.5
.看来你的张量流需要cudnn 5.x,所以安装cudnn 5.x.
确保您已经安装了cuda 8.0并导出了PATH
和LD_LIBRARY_PATH
要安装cudnn 5.x,请尝试以下命令
$ tar -zxvf cudnn-8.0-linux-x64-v5.1.tgz
Run Code Online (Sandbox Code Playgroud)
$ cd cuda/lib64/
$ ls -l
total 150908
lrwxrwxrwx 1 doom doom 13 Nov 7 2016 libcudnn.so -> libcudnn.so.5
lrwxrwxrwx 1 doom doom 18 Nov 7 2016 libcudnn.so.5 -> libcudnn.so.5.1.10
-rwxr-xr-x 1 doom doom 84163560 Nov 7 2016 libcudnn.so.5.1.10
-rw-r--r-- 1 doom doom 70364814 Nov 7 2016 libcudnn_static.a
Run Code Online (Sandbox Code Playgroud)
在这里你会看到2个符号链接文件,只是复制libcudnn.so.5.1.10
和libcudnn_static.a
到/usr/local/cuda/lib64
$ cd /usr/local/cuda/lib64/
$ sudo ln -s libcudnn.so.5.1.10 libcudnn.so.5
$ sudo ln -s libcudnn.so.5 libcudnn.so
$ ls -l libcudnn*
lrwxrwxrwx 1 root root 13 May 24 09:24 libcudnn.so -> libcudnn.so.5
lrwxrwxrwx 1 root root 18 May 24 09:24 libcudnn.so.5 -> libcudnn.so.5.1.10
-rwxr-xr-x 1 root root 84163560 May 24 09:23 libcudnn.so.5.1.10
-rw-r--r-- 1 root root 70364814 May 24 09:23 libcudnn_static.a
Run Code Online (Sandbox Code Playgroud)
cudnn.h
的include
目录/usr/local/cuda/include
$ sudo cp cudnn.h /usr/local/cuda/include/
Run Code Online (Sandbox Code Playgroud)
希望它能帮到你!
oma*_*rc7 10
我修复此问题只是将cuda路径添加到我的.bashrc中
export LD_LIBRARY_PATH=/usr/local/cuda/lib64/
Run Code Online (Sandbox Code Playgroud)
请记住,首先您需要访问nvidia Deep Learning页面,注册并下载cuDNN,将include和lib64文件夹中的文件解压缩并复制到您的cuda安装中.
我看到了类似的错误(这篇文章的底部),但抱怨libcudnn.so.6而不是libcudart.so.8.0(参见下面的注释).
解:
注意:
Tensorflow安装说明(截至2017年8月20日)需要安装cuDNN v5.1,但我的Tensorflow安装(按照virtualenv中的安装说明)需要cuDNN v6.x(如错误所示).我不知道这是我的错误还是Tensorflow文档.不过,上述解决方案对我有用.
遇到错误:
In [1]: import tensorflow as tf
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-1-41389fad42b5> in <module>()
----> 1 import tensorflow as tf
/home/haseeb/.virtualenvs/attention_transformer/local/lib/python2.7/site-packages/tensorflow/__init__.py in <module>()
22
23 # pylint: disable=wildcard-import
---> 24 from tensorflow.python import *
25 # pylint: enable=wildcard-import
26
/home/haseeb/.virtualenvs/attention_transformer/local/lib/python2.7/site-packages/tensorflow/python/__init__.py in <module>()
47 import numpy as np
48
---> 49 from tensorflow.python import pywrap_tensorflow
50
51 # Protocol buffers
/home/haseeb/.virtualenvs/attention_transformer/local/lib/python2.7/site-packages/tensorflow/python/pywrap_tensorflow.py in <module>()
50 for some common reasons and solutions. Include the entire stack trace
51 above this error message when asking for help.""" % traceback.format_exc()
---> 52 raise ImportError(msg)
53
54 # pylint: enable=wildcard-import,g-import-not-at-top,unused-import,line-too-long
ImportError: Traceback (most recent call last):
File "/home/haseeb/.virtualenvs/attention_transformer/local/lib/python2.7/site-packages/tensorflow/python/pywrap_tensorflow.py", line 41, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "/home/haseeb/.virtualenvs/attention_transformer/local/lib/python2.7/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "/home/haseeb/.virtualenvs/attention_transformer/local/lib/python2.7/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
ImportError: libcudnn.so.6: cannot open shared object file: No such file or directory
Failed to load the native TensorFlow runtime.
See https://www.tensorflow.org/install/install_sources#common_installation_problems
for some common reasons and solutions. Include the entire stack trace
above this error message when asking for help.
Run Code Online (Sandbox Code Playgroud)
上述错误通常是由于运行脚本时未指定 Cuda SDK 或 cuDNN 的版本号而导致的configure
。换句话说,在运行configure
脚本时,始终指定版本号以响应以下两个问题:
Please specify the Cuda SDK version you want to use, e.g. 7.0.
Please specify the cuDNN version you want to use.
不接受系统默认值。
归档时间: |
|
查看次数: |
96941 次 |
最近记录: |