the_velour_fog Asked: 2019-01-01 17:07:14 +0800 CST2019-01-01 17:07:14 +0800 CST 2019-01-01 17:07:14 +0800 CST 将虚拟包指定为依赖项时,apt/dpkg 如何选择安装哪个真实包? 772 例如,如果包指定 Depends: www-browser apt/dpkg 如何决定安装哪个真正的软件包? dpkg apt 1 个回答 Voted Best Answer Nonny Moose 2019-01-01T17:22:55+08:002019-01-01T17:22:55+08:00 根据Ask Ubuntu 上的这个答案,apt 将首先尝试安装作为选项列出的任何非虚拟软件包: 现在,根据消息来源,apt在尝试使用虚拟包之前首先尝试满足依赖关系(即,如果依赖是,则检查是否安装了任何包,如果两者都没有,则尝试安装 firefox)。firefox | www-browser 如果没有,它将简单地遍历提供虚拟包的包列表,并安装它可以安装的第一个包: 如果非虚拟包不可用,如果没有其他依赖项被破坏,它似乎只是遍历提供虚拟包的所有包。这种行为的其他评论证据是this导致GrpIterator::FindPreferredPkg function。
根据Ask Ubuntu 上的这个答案,apt 将首先尝试安装作为选项列出的任何非虚拟软件包:
如果没有,它将简单地遍历提供虚拟包的包列表,并安装它可以安装的第一个包: