首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Debian包之间的循环依赖关系

Debian包之间的循环依赖关系
EN

Stack Overflow用户
提问于 2018-05-02 09:18:33
回答 1查看 206关注 0票数 1

我的印象是Debian包之间的depends/rdepends关系构成有向无环图(DAG)。

但是,我只是在两个包之间遇到了这些对称的rdepends依赖关系:

代码语言:javascript
复制
apt-cache rdepends libwww-perl        # includes libsoap-lite-perl
apt-cache rdepends libsoap-lite-perl  # includes libwww-perl

这两个包都是从stretch/main安装的。这是一个特性还是一个bug?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-02 16:28:36

这主要是一个特点。

不可能有一个无圈图:

  • 大量的包,没有工具来建议有关依赖问题。
  • 确实存在着循环依赖关系。通过从头构建一个发行版,您会注意到它,例如,现在libc需要一些外部程序(例如解析器),而这样的程序需要libc。解决这个问题的一种方法是使用essential包:这些包构建了包的核心,可以相互依赖。
  • 可以方便地将库拆分为程序,二进制文件分离为体系结构无关的文件(特别是在数据庞大的情况下)。这可能导致循环依赖:这两个部分应该一起安装。
  • 包关系的变化和包的变化。因此,有时某些部分被移到另一个包中。循环依赖隐藏API提供程序的内部移动。
  • 等。

因为Debian不仅仅是一个单一的“分发”,而是许多“分发”(例如“cont肋骨”和“非免费”,也包括“安全性”、“backport”、“实验性”等)。作为Packages.gz列表,此外,有时我们还包括外部(非Debian)包,需要一个非循环依赖图可能很困难,或者仅仅是它会阻止apt,而没有人愿意这样做。所以我认为循环依赖仍然是一个“特性”。

注意:有时周期只是“可选的”。所需的包之一是循环的,但不是所有的可能性。“虚拟包”使得这变得更加困难。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50131087

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档