![安装本地包来替换已经安装的包](https://linux22.com/image/969582/%E5%AE%89%E8%A3%85%E6%9C%AC%E5%9C%B0%E5%8C%85%E6%9D%A5%E6%9B%BF%E6%8D%A2%E5%B7%B2%E7%BB%8F%E5%AE%89%E8%A3%85%E7%9A%84%E5%8C%85.png)
我正在尝试安装一个本地构建的 .deb 文件来替换已安装的包。
尝试使用dpkg -i
结果如下:
dabo@chrubuntu:~/Downloads/mali$ sudo dpkg -i chromium-mali-opengles_0.45-0ubuntu1_armhf.deb
dpkg: considering removing libegl1-mesa:armhf in favour of chromium-mali-opengles:armhf ...
dpkg: no, cannot proceed with removal of libegl1-mesa:armhf (--auto-deconfigure will help):
libegl1-mesa-drivers:armhf depends on libegl1-mesa (= 9.1.4-0ubuntu0.1)
libegl1-mesa:armhf is to be removed.
dpkg: regarding chromium-mali-opengles_0.45-0ubuntu1_armhf.deb containing chromium-mali-opengles:armhf:
chromium-mali-opengles conflicts with libegl1-x11
libegl1-mesa:armhf provides libegl1-x11 and is present and installed.
dpkg: error processing chromium-mali-opengles_0.45-0ubuntu1_armhf.deb (--install):
conflicting packages - not installing chromium-mali-opengles:armhf
Errors were encountered while processing:
chromium-mali-opengles_0.45-0ubuntu1_armhf.deb
当我尝试卸载 libegl1-mesa 时,它也会卸载大量依赖它的其他软件包。
有什么办法可以安装 chromium-mali-opengles_0.45-0ubuntu1_armf.deb 吗?
我想做的一件事是使用dpkg --get-selections
保存所有软件包名称,卸载 libegl1-mesa 及其所有依赖项,安装 chromium-mali-opengles,然后使用 恢复其余软件包dpkg --set-selections
。这会是一个非常糟糕的主意吗?
我还非常确定 aptitude 之类的东西可以让我卸载一个软件包并同时安装另一个软件包,而无需卸载所有依赖它的软件包。虽然我不知道如何使用 aptitude 来做到这一点。
我也尝试过使用 gdebi,认为它可能具有更多的依赖管理,但它给出了与 dpkg 相同的错误。
答案1
首先尝试使用以下方法解决问题依赖项,然后尝试使用以下命令安装它:
sudo dpkg -i -B chromium-mali-opengles_0.45-0ubuntu1_armhf.deb
从man dpkg
:
-B, --auto-deconfigure When a package is removed, there is a possibility that another installed package depended on the removed package. Specifying this option will cause automatic deconfiguration of the package which depended on the removed package.