webentwicklung-frage-antwort-db.com.de

ImportError: libcublas.so.9.0: Freigegebene Objektdatei kann nicht geöffnet werden: Keine solche Datei oder Verzeichnis bei der Installation des Tensor-Flusses unter Ubuntu 16.04.03

Ich versuche, Tensorflow mit Unterstützung für Cuda und GPU zu installieren. Wenn ich versuche, es zu importieren, erhalte ich die folgende Fehlermeldung:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/srivishnu/.local/lib/python2.7/site-packages/tensorflow/__init__.py", line 24, in <module>
    from tensorflow.python import *
  File "/home/srivishnu/.local/lib/python2.7/site-packages/tensorflow/python/__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "/home/srivishnu/.local/lib/python2.7/site-packages/tensorflow/python/pywrap_tensorflow.py", line 74, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "/home/srivishnu/.local/lib/python2.7/site-packages/tensorflow/python/pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "/home/srivishnu/.local/lib/python2.7/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "/home/srivishnu/.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: libcublas.so.9.0: cannot open shared object file: No such file or directory

dieser Fehler tritt auf, wenn ich diesen Befehl eingebe:

import tensorflow as tf

Können Sie mir bitte helfen, dieses Problem zu lösen

3

Dies ist fast immer ein fehlender Pfad in Ihrem LD_LIBRARY_PATH. Suchen Sie libcublas.so.9.0 auf Ihrem System (suchen Sie unter /usr/local). 

Wenn Sie es nicht finden, installieren Sie das CUDA 9.0 Toolkit (beachten Sie, dass Sie mit TF 1.5 9.0 und nicht 9.1, ein allgemeines Problem haben wollen, zumindest so weit, als ich diesen Fehler selbst gemacht habe).

https://developer.nvidia.com/cuda-90-download-archiv

Wenn Sie es haben, aktualisieren Sie Ihren LD_LIBRARY_PATH, um auf das entsprechende lib-Verzeichnis zu verweisen.

Wenn Sie eine dieser Methoden ausgeführt haben und jetzt einen ähnlich aussehenden Fehler für eine mit cudnn verwandte Bibliothek erhalten, wiederholen Sie diesen Vorgang für die CUDNN-Bibliothek.

https://developer.nvidia.com/cudnn

Ich denke die neueste Version funktioniert. Tensorflow hängt sowohl vom CUDA-Toolkit als auch von der CuDNN-Bibliothekserweiterung ab.

Beachten Sie, dass Sie dies auch im Benutzerraum installieren können (Sudo ist typisch, aber nicht erforderlich).

2
David Parks

Um die libcublas-Datei leicht zu finden, führen Sie Sudo find / -iname 'libcublas*' aus. Fügen Sie dann den Pfad zu dem Ordner mit dieser Datei in LD_LIBRARY_PATH hinzu.

0
Daniel Azemar

Ich hatte cuda-9.0 installiert und der LD_LIBRARY_PATH zeigte auf den richtigen Speicherort. Es stellte sich heraus, dass die Berechtigung des Ordners /usr/local/cuda-9.0 falsch war. Ich konnte nicht mal cd in den Ordner wechseln. Ich änderte den Besitzer des cuda-9.0 von root in my-user-name und danach konnte Python die fehlende Bibliothek finden.

0
hossein sadeghi