ubuntu 20.04 上运行:
sudo apt install nvidia-cuda-toolkit
报错:
正在解压 libnvidia-compute-435:amd64 (435.21-0ubuntu7) …
dpkg: 处理归档 /tmp/apt-dpkg-install-W0Mnlh/08-libnvidia-compute-435_435.21-0ubuntu7_amd64.deb (–unpack)时出错:
正试图覆盖 /usr/lib/x86_64-linux-gnu/libnvidia-ml.so,它同时被包含于软件包 nvidia-340 340.108-0ubuntu2
在处理时有错误发生:
/tmp/apt-dpkg-install-W0Mnlh/08-libnvidia-compute-435_435.21-0ubuntu7_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
既然无法成功安装,尝试删除:
sudo apt remove nvidia-cuda-toolkit
报错:
正在读取软件包列表… 完成
正在分析软件包的依赖关系树
正在读取状态信息… 完成
您也许需要运行“apt --fix-broken install”来修正上面的错误。
下列软件包有未满足的依赖关系:
libcuinj64-10.1 : 依赖: libcuda1 (>= 418.39) 或
libnvidia-tesla-cuda1 (>= 418.39) 但无法安装它 或
libcuda.so.1 (>= 418.39) 但无法安装它 或
libcuda-10.1-1
libnvidia-ml-dev : 依赖: libnvidia-ml1 (>= 418.39) 或
libnvidia-tesla-440-ml1 (>= 418.39) 但无法安装它 或
libnvidia-tesla-418-ml1 (>= 418.39) 但无法安装它 或
libnvidia-ml.so.1 (>= 418.39) 但无法安装它
E: 有未能满足的依赖关系。请尝试不指明软件包的名字来运行“apt --fix-broken install”(也可以指定一个解决办法)。
接下来按提示尝试:
sudo apt --fix-broken install
还是报一开始的错
打开新立得,提示有两个包破损
试图修复依赖关系破损的包(apt-get -f install),还是不行
在新立得里面尝试删除 nvidia-cuda-toolkit 也不行
这就是陷入进退两难的境地了,装也装不上,卸也卸不了.
最后,在新立得里面,把 nvidia-cuda-toolkit 及那两个依赖关系破损的包都标记为彻底删除,再应用标记的更新,就成功删除了.
网上还有说处理:
dpkg error: “trying to overwrite file, which is also in…”
用
sudo dpkg -i –force-overwrite xxxxxxxxxx
https://askubuntu.com/questions/176121/dpkg-error-trying-to-overwrite-file-which-is-also-in
或
apt-get -o Dpkg::Options::="–force-overwrite" install xxxxxxxxx
https://raphaelhertzog.com/2011/08/01/understanding-dpkgs-file-overwrite-error/
都还没试. 不知在我这里是否适用.