初めてUbuntu 18.04をインストールしました。GPUコードで遊ぶのが楽しみだったdeb (local)
ので17.10
、Nvidia CUDA ページわかっています17.10 != 18.04
、でもこれで成功した人がいるという話は読んだことがあります。
Nvidia が提供するインストール手順に従いました。
sudo dpkg -i cuda-repo-ubuntu1710-9-2-local_9.2.88-1_amd64.deb
sudo apt-key add /var/cuda-repo-<version>/7fa2af80.pub
sudo apt-get update
sudo apt-get install cuda
最後のコマンドはインストール時にエラーが発生しましたnvidia-396
:
Get:1 file:/var/cuda-repo-9-2-local nvidia-396 396.26-0ubuntu1 [80.0 MB]
(Reading database ... 167630 files and directories currently installed.)
Preparing to unpack .../nvidia-396_396.26-0ubuntu1_amd64.deb ...
Unpacking nvidia-396 (396.26-0ubuntu1) ...
dpkg: error processing archive /var/cuda-repo-9-2-local/./nvidia-396_396.26-0ubuntu1_amd64.deb (--unpack):
trying to overwrite '/usr/lib/x86_64-linux-gnu/libGLX_indirect.so.0', which is also in package libglx-mesa0:amd64 18.0.0~rc5-1ubuntu1
Errors were encountered while processing:
/var/cuda-repo-9-2-local/./nvidia-396_396.26-0ubuntu1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
おそらく、手に負えないほどのことをやってしまったので、あまり難しくないものに移ることにしました。 などの基本的なパッケージをインストールしようとしましたgit
が、その際に次のエラーが発生しました。
> sudo apt-get install git
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
cuda-drivers : Depends: nvidia-396 (>= 396.26) but it is not going to be installed
git : Depends: liberror-perl but it is not going to be installed
Depends: git-man (> 1:2.17.1) but it is not going to be installed
Depends: git-man (< 1:2.17.1-.) but it is not going to be installed
libcuda1-396 : Depends: nvidia-396 (>= 396.26) but it is not going to be installed
nvidia-396-dev : Depends: nvidia-396 (>= 396.26) but it is not going to be installed
nvidia-opencl-icd-396 : Depends: nvidia-396 (>= 396.26) but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
提案されたsudo apt --fix-broken install
コマンドを試しても、上記と同じnvidia-396
エラーが発生します。
のインストールを試みましたが、依存関係エラーが満たされていないため、パッケージのインストールや削除ができなくなる状態になっているcuda
ようです。簡単に言うと、インストールが完全に壊れてしまいました 。apt-get
cuda
apt-get
パッケージ マネージャーを再び動作させるにはどうすればよいですか?
答え1
この問題は、次の方法でのみ解決できます。
sudo apt-get -o Dpkg::Options::="--force-overwrite" install --fix-broken
答え2
StrugglingProgrammerのコマンドと同様に、アンインストールすることを確認する必要がありました全てcuda パッケージ (例: cuda-demo*)
以下の方法で、それがどれであるかを確認できます。
dpkg -l | grep -i cuda
dpkg -l | grep -i nvidia
どちらかを試してみてください
sudo apt-get remove --purge cuda-* libcuda* nvidia*
(バッチ全体) または次のようにさらに具体的に選択します:
sudo apt-get remove --purge cuda-drivers libcuda* cuda-runtime* cuda-8-0 cuda-demo*
cuda-8-0
私の場合は特に(とのインストールに失敗した後libcudnn6
)、次のようになりました。
sudo apt-get remove --purge nvidia* cuda-drivers libcuda* cuda-runtime* cuda-8-0 cuda-demo*
それが役に立つことを願っています。
答え3
私は、1 つのコマンドでインストールされたものをすべて削除することでこの問題を解決しましたapt-get remove
。
sudo apt-get remove --purge nvidia* cuda-drivers libcuda1-396 cuda-runtime-9-2 cuda-9.2 cuda-demo-suite-9-2 cuda
答え4
私は処刑した
sudo add-apt-repository ppa:graphics-drivers
sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub
sudo bash -c 'echo "deb http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64 /" > /etc/apt/sources.list.d/cuda.list'
sudo bash -c 'echo "deb http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64 /" > /etc/apt/sources.list.d/cuda_learn.list'
(b) CuDNNライブラリを含むCUDA 10.1パッケージをインストールする
sudo apt update
sudo apt install cuda-10-1
sudo apt install libcudnn7
これをチェックしてリンクドライバーは削除せず、上記のものをインストールして.profileを更新しました。
nano ~/.profile
# set PATH for cuda 10.1 installation
if [ -d "/usr/local/cuda-10.1/bin/" ]; then
export PATH=/usr/local/cuda-10.1/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
fi