1. ホーム
  2. テンソルフロー

Solve ImportError: libcublas.so.10.0: 共有オブジェクト・ファイルを開くことができません。そのようなファイルまたはディレクトリがありません

2022-02-22 11:11:21
<パス

これは比較的よくある問題で、根本的な原因は を見つけることができません。
対応するシナリオをいくつか紹介します。

I. コマンドラインで、対応する仮想環境のgpu版tensorflowを呼び出すとエラーになる

このような状況になる理由は、一般的に2つあります。

1.cudaとtensorflowのバージョンが対応していない

回避策:tensorflow, cudaを以下のバージョンで再インストールします。 tensorflow 中国語コミュニティ 対応する詳細がありますので、リンクをクリックして一番下まで引っ張ってきてください。

2. システムがcudaを見つけることができません

vim ~. /bashrc


最後に

export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
    
export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

export CUDA_HOME=/usr/local/cuda



の最終リフレッシュ。

source ~. /bashrc


テスト
対応する仮想環境に切り替え、pythonと入力してテストします。

import tensorflow as tf
print(tf.__version__)


対応するバージョンを取得することができ、成功を示しています。

次に、pycharmを使用する場合、import tensorflowはエラーを報告します。

まず前のステップのテストを使って、tensorflowのバージョンを正常に表示できるかどうかを確認し、それが失敗したら、まず上記の方法を使って処理します。
コンパイラはエラーを報告しませんが、pycharmは設定した環境変数を読み取れないため、エラーを報告します。解決方法は、次の2つのケースに分かれます。

1, ローカルのpycharmとローカルの仮想環境を使用する場合

linux環境での2つの解決策。

1.1 ターミナルでbashを使ってpycharmを起動すると、環境変数に

1.2 pycharm.shファイルを探し、そこにcuda関連の環境変数を追加して保存します。

pycharmファイルの下のbinディレクトリに、LD_LIBRARY_PATH=/usr/local/cuda/lib64を追加します。

Windowsで直接環境変数を変更するのは問題ありません。

2. リモート接続でサーバーを利用する

これを行うにはかなり多くの方法がありますが、主なものは2つあり、そのルートはpycharmにcudaの場所を見つけさせることです

2.1 pycharm の Run-> Edit Configurations をクリックして直接設定を変更します。


赤枠の部分をクリック

プラス記号をクリックして、新しい環境変数LD_LIBRARY_PATH=/usr/local/cuda/lib64を追加します。

2.2 ダイナミックリンクライブラリを直接作成する

xshellでサーバにリモートで接続する

ldconfig /usr/local/cuda/lib64


また、リンクの作り方もいろいろあるので、これだけにして、ダイナミックリンクライブラリの知識は百度などで調べてみてください。