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

Posted

技术标签:

【中文标题】ImportError:libcudart.so.8.0:无法打开共享对象文件:没有这样的文件或目录【英文标题】:ImportError: libcudart.so.8.0: cannot open shared object file: No such file or directory 【发布时间】:2017-08-27 00:33:30 【问题描述】:

我正在尝试在我的系统上使用 tensorflow-gpu。我已经重新安装了很多次,它给出了下面的错误。但是当我使用 tensorflow-cpu 时它工作正常。我安装了 cuda 8.0 工具包和 cudnn 5.1。

  Traceback (most recent call last):
  File "finetune.py", line 17, in <module>
    import tensorflow as tf
  File "/home/saurabh/code/env/local/lib/python2.7/site-packages/tensorflow/__init__.py", line 24, in <module>
    from tensorflow.python import *
  File "/home/saurabh/code/env/local/lib/python2.7/site-packages/tensorflow/python/__init__.py", line 72, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "/home/saurabh/code/env/local/lib/python2.7/site-packages/tensorflow/python/__init__.py", line 61, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "/home/saurabh/code/env/local/lib/python2.7/site-packages/tensorflow/python/pywrap_tensorflow.py", line 28, in <module>
    _pywrap_tensorflow = swig_import_helper()
  File "/home/saurabh/code/env/local/lib/python2.7/site-packages/tensorflow/python/pywrap_tensorflow.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow', fp, pathname, description)
ImportError: libcudart.so.8.0: cannot open shared object file: No such file or directory


Failed to load the native TensorFlow runtime.

See https://github.com/tensorflow/tensorflow/blob/master/tensorflow/g3doc/get_started/os_setup.md#import_error

for some common reasons and solutions.  Include the entire stack trace
above this error message when asking for help.

【问题讨论】:

运行echo $CUDA_HOME会得到什么? 你在安装 cuda 后更新了你的 PATH 和 LD_LIBRARY_PATH 吗? @Ali - 没有该名称的变量。 @Kochoba - 是的,我已经更新了它们。 LD_LIBRARY_PATH - /home/saurabh/cuda/lib64PATH - /usr/local/cuda-8.0/bin:/home/saurabh/code/env/bin:/bin:/usr /local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin跨度> 运行export CUDA_HOME=/usr/local/cuda-8.0然后重试,现在解决了吗? 【参考方案1】:

如果更改路径变量不起作用,在终端中运行以下命令通常可以为我解决这个问题:

sudo ldconfig /usr/local/cuda/lib64

(有时cuda 可能需要类似于cuda-8.0,具体取决于您的安装)

【讨论】:

【参考方案2】:

问题是你没有设置环境变量CUDA_HOME。如果你认为你已经安装了 CUDA,那么你需要确保上面的环境变量设置为 prob=perly 并且包含所有共享库所在的 CUDA 安装目录的地址。

export CUDA_HOME=/CUDA/installation/path
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$CUDA_HOME/lib64:$CUDA_HOME/extras/CUPTI/lib64"

【讨论】:

我没有在任何文档中阅读过关于 CUDA_HOME 变量的信息。但我知道我必须更改我已经完成的 PATH 和 LD_LIBRARY_PATH(如上面的 cmets 所述)。你能给我发一些设置 CUDA_HOME 变量的链接吗? 我在我的虚拟环境中运行了这个命令 - # 需要 CUDA 工具包 7.5 和 CuDNN v5。对于其他版本,请参阅下面的“从源安装”。 export TF_BINARY_URL=storage.googleapis.com/tensorflow/linux/gpu/… 但这是针对 Cuda 7.5,但仍然显示相同的错误,但最后一部分和以下部分 未能加载本机 TensorFlow 运行时。 已消失。查看此链接并与问题link中的错误进行比较 抱歉,到底发生了什么? 我运行了这个命令 - export TF_BINARY_URL=storage.googleapis.com/tensorflow/linux/gpu/…。它现在给我这个错误link 看起来这次 TF 使用的是 CUDA 7.5,并且相应的 env 变量没有正确设置。【参考方案3】:

sudo ldconfig /usr/local/cuda/lib64

为我工作。

请参阅此链接了解更多信息。 https://github.com/tensorflow/tensorflow/issues/5343

【讨论】:

以上是关于ImportError:libcudart.so.8.0:无法打开共享对象文件:没有这样的文件或目录的主要内容,如果未能解决你的问题,请参考以下文章

tensorflow pycharm ImportError: libcudart.so.7.5

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

libcudart.so 的路径是啥?

Pytorch 中的错误:libcudart.so.10.2:无法打开共享对象文件:没有这样的文件或目录

报错解决

YoLOV3初训练遇到的一些问题