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

时间:2017-07-09 04:51:28

标签: python-2.7 tensorflow virtualenv gpu

this question.可能重复 我有一个gpu帐户,我通过putty连接(ssh登录)。我在那里创建了一个virtualenv,我正在通过pip为gpu安装tenorflow。当我运行命令

时,一切正常
$ pip list

正在显示以下列表:

 backports.weakref (1.0rc1)
 bleach (1.5.0)
 funcsigs (1.0.2)
 html5lib (0.9999999)
 Markdown (2.6.8)
 mock (2.0.0)
 numpy (1.13.1)
 olefile (0.44)
 pbr (3.1.1)
 Pillow (4.2.1)
 pip (9.0.1)
 protobuf (3.3.0)
 setuptools (36.0.1)
 six (1.10.0)
 tensorflow-gpu (1.2.1)
 Werkzeug (0.12.2)
 wheel (0.29.0)

但是当我跑步时:

$ python
>>> import tensorflow

它显示以下错误:

  Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/nauman/junaid/final/test/lib/python2.7/site-
  packages/tensorflow/__init__.py", line 24, in <module>
  from tensorflow.python import *
  File "/home/nauman/junaid/final/test/lib/python2.7/site-
  packages/tensorflow/python/__init__.py", line 49, in <module>
  from tensorflow.python import pywrap_tensorflow
  File "/home/nauman/junaid/final/test/lib/python2.7/site-
  packages/tensorflow/python/pywrap_tensorflow.py", line 52, in <module>
  raise ImportError(msg)
  ImportError: Traceback (most recent call last):
  File "/home/nauman/junaid/final/test/lib/python2.7/site-
  packages/tensorflow/python/pywrap_tensorflow.py", line 41, in <module>
  from tensorflow.python.pywrap_tensorflow_internal import *
  File "/home/nauman/junaid/final/test/lib/python2.7/site-
  packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in 
  <module>
  _pywrap_tensorflow_internal = swig_import_helper()
  File "/home/nauman/junaid/final/test/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: libcusolver.so.8.0: 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.

我还设置了这样的环境变量:

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

而且,我发现libcusolver.so.8.0不存在,而libcusolver.so.7.5 是在cuda / lib64 /。 张力流以某种方式发现了错误的文件,或者我什么都不知道。 任何帮助将不胜感激,因为我是所有这些东西的新手。 Python版本:2.7 操作系统:Linux

4 个答案:

答案 0 :(得分:5)

这可能与您图书馆的错误链接有关 只需运行sudo ldconfig /usr/local/cuda/lib64即可。它为我解决了。

如果您需要了解更多信息:ldconfig man page

答案 1 :(得分:3)

我解决了这个问题。其实我安装了cuda 7.5,我正在安装最新的tensorflow版本,可能支持cuda 8.0。 所以我降级了。

 pip install --upgrade \ https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.10.0-cp27-none-linux_x86_64.whl

答案 2 :(得分:0)

如果您使用tensorflow-gpu使用预建pip安装了.whl,则修复了cuda版本。据我所知,从0.11.0rc1开始,所有预建包现在都是为cuda 8构建的。所以有两种方法可以解决这个问题:

  1. 为预建软件包cuda 8
  2. 安装tensorflow-gpu >= 0.11.orc1
  3. 保持cuda 7.5,然后从源代码构建tensorflow-gpu

答案 3 :(得分:0)

如果您使用的是cuda-9.0,请尝试sudo apt install nvidia-cuda-dev(如果您使用的是Ubuntu发行版)