質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.75%

  • Python

    6831questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Python 2.7

    1203questions

    Python 2.7は2.xシリーズでは最後のメジャーバージョンです。Python3.1にある機能の多くが含まれています。

  • TensorFlow

    601questions

"import tensorflow"のエラー(cuda9.0の代わりにcuda8.0をインストールする方法)

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 1
  • VIEW 4,610

kryoh

score 4

パソコン(LITTLEGEAR i310PA6-SP4-W7D)にデュアルブートでwindowsとubuntuを入れています。

ubuntuでpyhtonで、cuda9.0とcudnn7.0を用いています。

pip listでは、
tensorflow-gpu (1.3.0)
と表示されますが、
import tensorflow を行うと、

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/tensorflow/init.py", line 24, in <module>
from tensorflow.python import *
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/init.py", line 49, in <module>
from tensorflow.python import pywrap_tensorflow
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 52, in <module>
raise ImportError(msg)
ImportError: Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 41, in <module>
from tensorflow.python.pywrap_tensorflow_internal import *
File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>
_pywrap_tensorflow_internal = swig_import_helper()
File "/usr/local/lib/python2.7/dist-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.

とエラーが表示されます。
解決策のご提示、よろしくお願いいたします。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

checkベストアンサー

+3

今回の件はとりあえずWindowsとは関係なさそうですね。
(ちなみにWindowsでTFを使うとPytho3.5.xに縛られます)


* 本題
ザーッとエラーがあると委縮しますが、Pythonの場合、一番下のあたりにエラーの実体が書かれ、その上につらつらとエラーの元をたどるようにトレースされます。

で、今回の場合、

ImportError: libcusolver.so.8.0: cannot open shared object file: No such file or directory
Failed to load the native TensorFlow runtime.

が悪さをしていますね。

Stackoverflowの先行事例によれば、

LD_LIBRARY_PATHcuda/lib64を加えればいい、ということが書いてあります。
コマンドは、export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64/だそうです。


* 補足
これでダメなら、sudo apt install nvidia-cuda-devをして、cuDNNをインストールすればよさそうです。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/10/15 23:51 編集

    echo $LD_LIBRARY_PATH
    /usr/local/cuda-8.0/lib64:/usr/local/cuda-9.0/lib64:
    /usr/local/cuda/lib64::/usr/local/cuda/lib64/:/usr/local/cuda/lib64/
    と”::”と2つ続きなっていました。
    何度も申し訳ございませんが、どのように変更すればよろしいでしょうか。
    ご回答、よろしくお願いいたします。

    キャンセル

  • 2017/10/16 02:15

    いろいろ試した結果、
    echo $LD_LIBRARY_PATH
    /usr/local/cuda-8.0/lib64:/usr/local/cuda-9.0/lib64:/usr/local/cuda/lib64:
    となりました。

    キャンセル

  • 2017/10/16 07:12

    対応が済んだ後にpythonの中で、”import tensorflow”がエラー無く実行できましたか?

    キャンセル

  • 2017/10/24 20:54

    echo $LD_LIBRARY_PATH
    /usr/local/cuda-8.0/lib64:/usr/local/cuda-9.0/lib64:/usr/local/cuda/lib64:
    が表示され、pythonの中で”import tensorflow”とすると、

    >>> import tensorflow
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/__init__.py", line 24, in <module>
    from tensorflow.python import *
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/__init__.py", line 60, in <module>
    raise ImportError(msg)
    ImportError: Traceback (most recent call last):
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
    File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 28, in <module>
    _pywrap_tensorflow = swig_import_helper()
    File "/usr/local/lib/python2.7/dist-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


    Error importing tensorflow. Unless you are using bazel,
    you should not try to import tensorflow from its source directory;
    please exit the tensorflow source tree, and relaunch your python interpreter
    from there.
    と表示されます。

    キャンセル

  • 2017/10/24 22:03

    > ubuntuでpyhtonで、cuda9.0とcudnn7.0を用いています。

    > ImportError: libcudart.so.8.0: cannot open shared object file: No such file or directory
    ですので、CUDAのバージョン違いでPythonが激おこぷんぷん丸と思われます。
    事情があってCUDA9.0でないとダメであれば話は別ですが、とりあえずはCUDA8.0にダウングレードすれば解決できそうな気がします。

    キャンセル

  • 2017/10/25 15:49

    tensorflow1.3.0はcuda9.0に対応しておらず、cuda8.0をダウンロードする必要がありました。

    cuda8.0をダウンロードしようとすると、cuda9.0がダウンロードされました。
    そこで、cudaのホームページ(https://developer.nvidia.com/cuda-80-download-archive)より
    1、`sudo dpkg -i cuda-repo-ubuntu1604_8.0.44-1_amd64.deb`
    2、`sudo apt-get update`
    3、`sudo apt-get install cuda`
    の3を
    sudo apt-get install cuda-8-0
    (参照:https://devtalk.nvidia.com/default/topic/1024342/cuda-setup-and-installation/unable-to-uninstall-cuda-9-0-completely-and-install-8-0-instead/)
    とすることで、cuda8.0をダウンロードできました。
    その結果、python→import tensorflowができるようになりました。

    キャンセル

  • 2017/10/25 19:08

    sudo apt-get install cuda-8-0
    がミソですね。フィードバックをありがとうございます。同じ問題が起きた人が居てもこれで助かりますね。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.75%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • Python

    6831questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Python 2.7

    1203questions

    Python 2.7は2.xシリーズでは最後のメジャーバージョンです。Python3.1にある機能の多くが含まれています。

  • TensorFlow

    601questions