我认为案例研究更能理解我的意思。我安装了 cuda 9.0.176 和 cuddn 7.1.4。cudnn 的最新版本是 7.3.0,但它依赖于 cuda >= 10,出于不相关的原因,我无法升级 cuda。但是,我可以将 cudnn 升级到版本 7.2.1,该版本在档案中可用,并且我已经安装了其依赖项。但是,pacman -S
不会将我的软件包升级到这些中间版本,因此我的 cudnn 软件包比必要的更过时。有没有办法在这种情况下升级软件包,而不必手动下载和安装它们pacman -U
?
答案1
您可以使用Arch Linux 档案将整个系统同步到具有所需 cuda 版本的过去某个统一日期。
您还可以保留 cuda 版本,在需要更改 soname 依赖项时重建它,并构建自定义 cudnn/其他软件包(这些软件包特别依赖于您的旧 cuda 软件包)。这需要您自己进行维护,但可以让您安全地更新系统。
我个人对 cuda 不太熟悉,但你应该能够使用各种 AUR 包,例如、 、cuda-7.0
等cuda-7.5
,来部分自动化执行此操作。还有一个包。cuda-8.0
cuda-9.1
cuda-9.2
cudnn6