Ich habe gerade Ubuntu 18.04 zum ersten Mal installiert. Da ich gespannt darauf war, mit einigen GPU-Codes zu spielen, habe ich CUDA über die Option deb (local)
for installiert 17.10
, wie auf derNvidia CUDA-Seite. Ich weiß 17.10 != 18.04
, aber ich habe gelesen, dass es Leute gibt, die damit Erfolg hatten.
Ich habe die Installationsanweisungen von Nvidia befolgt:
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
Der letzte Befehl führte bei der Installation zu einem Fehler 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)
Vielleicht habe ich mir zu viel vorgenommen, also habe ich beschlossen, mich weniger anspruchsvollen Dingen zuzuwenden. Ich habe angefangen, einige grundlegende Pakete zu installieren, wie zum Beispiel git
, aber dabei habe ich diese Fehlermeldung erhalten:
> 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).
Wenn Sie den vorgeschlagenen sudo apt --fix-broken install
Befehl ausprobieren, tritt derselbe nvidia-396
Fehler wie oben auf.
Es scheint, dass mein Installationsversuch in einen Zustand cuda
geraten ist apt-get
, in dem es aufgrund eines nicht erfüllten Abhängigkeitsfehlers keine Pakete mehr installieren oder entfernen kann. Einfacher ausgedrückt: Die Installation ist vollständig cuda
abgebrochen .apt-get
Wie kann ich meinen Paketmanager wieder zum Laufen bringen?
Antwort1
Ich behebe dieses Problem nur mit:
sudo apt-get -o Dpkg::Options::="--force-overwrite" install --fix-broken
Antwort2
Ähnlich wie beim Befehl von StrugglingProgrammer musste ich sicherstellen, dass ich deinstalliereallecuda-Pakete (z. B. die cuda-demo*)
Welche das sind, können Sie mit folgendem Link überprüfen:
dpkg -l | grep -i cuda
dpkg -l | grep -i nvidia
Versuchen Sie also vielleicht entweder
sudo apt-get remove --purge cuda-* libcuda* nvidia*
(für den gesamten Stapel) oder wählen Sie genauer aus, etwa:
sudo apt-get remove --purge cuda-drivers libcuda* cuda-runtime* cuda-8-0 cuda-demo*
Bei mir im Speziellen (nach dem Versuch einer fehlgeschlagenen Installation von cuda-8-0
und libcudnn6
) war es:
sudo apt-get remove --purge nvidia* cuda-drivers libcuda* cuda-runtime* cuda-8-0 cuda-demo*
Hoffe, das hilft.
Antwort3
Ich habe das Problem gelöst, indem ich alles Installierte mit einem einzigen apt-get remove
Befehl entfernt habe:
sudo apt-get remove --purge nvidia* cuda-drivers libcuda1-396 cuda-runtime-9-2 cuda-9.2 cuda-demo-suite-9-2 cuda
Antwort4
ich führte aus
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) Installieren Sie CUDA 10.1-Pakete, einschließlich der CuDNN-Bibliothek
sudo apt update
sudo apt install cuda-10-1
sudo apt install libcudnn7
Überprüfen Sie diesVerknüpfungIch habe keine Treiber entfernt, nur das oben genannte Zeug installiert und .profile aktualisiert.
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