如何说服dpkg libssl1.0.2> = libssl1.0.0?


14

我试图安装以前在Debian 8上安装的3rd party .deb软件包,但是由于出现以下错误,所以无法在全新的Debian 9安装程序上安装:

dpkg: dependency problems prevent configuration of parity:
 parity depends on libssl1.0.0 (>= 1.0.0); however:
  Package libssl1.0.0 is not installed.

确实安装了libssl1.0.2。但是它没有被识别为“> = libssl1.0.0”,所以我想知道如何解决此问题。

  1. 我是否手动安装libssl1.0.0?如果是这样,怎么办?

  2. 我是否链接某些东西?如果是这样,该怎么办?

  3. 还有吗

Answers:


29

libssl1.0.2并且libssl1.0.0是不同的软件包,提供不兼容的库;这就是为什么您不能libssl1.0.0使用满足依赖项的原因libssl1.0.2

为了满足您软件包的要求,建议您将Debian 8存储库添加到您的配置中,因为仍然支持Debian 8(因此,如有必要,您将获得安全更新)。为此,请编辑/etc/apt/sources.list文件,然后复制每一stretch行,并替换stretchjessie(这样,您将同时出现 stretchjessie行)。然后运行apt update,并且apt install libssl1.0.0应该可以工作。

或者,您可以下载软件包(在页面底部查找您的体系结构),然后使用进行安装dpkg -i

在这两种情况下,这都apt-mark auto libssl1.0.0将有所帮助:如果将来不再需要该软件包,可以考虑将其自动删除。


如果我同时拥有stretch和jessie的存储库,那么如何在两个存储库中的包装上避免冲突?
stone.212 17-10-14

apt将从配置类似的存储库中选择更高版本的软件包;因此,在您的情况下,它会偏向于Jessie,并且只会将Stretch储存库用于不再位于Stretch中的软件包(例如libssl1.0.0),只要它们与已安装的Jessie软件包不冲突即可。
史蒂芬·基特
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.