LoginSignup
23
16

More than 3 years have passed since last update.

CUDAの依存関係でエラーが出た話

Posted at

はじめに

CUDAの依存関係で困ったので解決策をメモしておきます。

エラーについて

Ubuntuでパッケージをインストールしようとした際、エラーが出て、
sudo apt-get -f installを実行してみてくださいと言われる。
実行するとCUDAの依存関係について以下のようなエラーが出る。

hoge@hoge:$ sudo apt-get -f install
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
依存関係を解決しています ... 完了
以下の追加パッケージがインストールされます:
 libcublas-dev
以下のパッケージが新たにインストールされます:
 libcublas-dev
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 119 個。
60 個のパッケージが完全にインストールまたは削除されていません。
38.9 MB 中 0 B のアーカイブを取得する必要があります。
この操作後に追加で 109 MB のディスク容量が消費されます。
続行しますか? [Y/n] y
(データベースを読み込んでいます ... 現在 344965 個のファイルとディレクトリがインストールされています。)
.../libcublas-dev_10.2.1.243-1_amd64.deb を展開する準備をしています ...
libcublas-dev (10.2.1.243-1) を展開しています...
dpkg: アーカイブ /var/cache/apt/archives/libcublas-dev_10.2.1.243-1_amd64.deb の処理中にエラーが発生しました (--unpack):
'/usr/lib/x86_64-linux-gnu/libcublas_static.a' を上書きしようとしています。これはパッケージ nvidia-cuda-dev 7.5.18-0ubuntu1 にも存在します
dpkg-deb: エラー: サブプロセス ペースト がシグナル (Broken pipe) によって強制終了されました
処理中にエラーが発生しました:
/var/cache/apt/archives/libcublas-dev_10.2.1.243-1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
(base) hiroka@hiroka:~/work/U-Net$ sudo apt --fix-broken install
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
依存関係を解決しています ... 完了
以下の追加パッケージがインストールされます:
 libcublas-dev
以下のパッケージが新たにインストールされます:
 libcublas-dev
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 119 個。
60 個のパッケージが完全にインストールまたは削除されていません。
38.9 MB 中 0 B のアーカイブを取得する必要があります。
この操作後に追加で 109 MB のディスク容量が消費されます。
続行しますか? [Y/n] y
(データベースを読み込んでいます ... 現在 344965 個のファイルとディレクトリがインストールされています。)
.../libcublas-dev_10.2.1.243-1_amd64.deb を展開する準備をしています ...
libcublas-dev (10.2.1.243-1) を展開しています...
dpkg: アーカイブ /var/cache/apt/archives/libcublas-dev_10.2.1.243-1_amd64.deb の処理中にエラーが発生しました (--unpack):
'/usr/lib/x86_64-linux-gnu/libcublas_static.a' を上書きしようとしています。これはパッケージ nvidia-cuda-dev 7.5.18-0ubuntu1 にも存在します
dpkg-deb: エラー: サブプロセス ペースト がシグナル (Broken pipe) によって強制終了されました
処理中にエラーが発生しました:
/var/cache/apt/archives/libcublas-dev_10.2.1.243-1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

エラー文を見てみるとnvidia-cuda-dev 7.5.18-0ubuntu1が邪魔をしていることがわかる。
これは、nvcc-Vコマンドを実行するために、nvidia-toolkitをインストールする際に入るもので、直接削除するのはリスクがあるため、今回は、dpkgする際に引数をforceにすることで、インストールを行った。参考サイト
以下の文を実行する。(ファイル名は調整)

$sudo dpkg -i --force-overwrite /var/cache/apt/archives/libcublas-dev_10.2.1.243-1_amd64.deb

その後、再びsudo apt-get -f installを実行。
この手順でインストールを行うことができました。

おわりに

今回は、色々調べた結果、強制的に展開を行いましたが、依存関係について、詳しくなりたいので、
解決法や、アドバイスがありましたら、教えていただけると幸いです。
また、同じようなエラーで困っている人がいれば参考にしていただけると幸いです。

23
16
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
23
16