为什么我无法安装具有固定依赖项的软件包?

为什么我无法安装具有固定依赖项的软件包?

我正在尝试从我公司的私有 Debian 软件包存储库(一个 Nexus 工件存储库)安装软件包。此存储库包含一个名为谷神星有两个可用版本:1.13.0-dittobuild11.13.0-dittobuild2也就是说,这些软件包具有相同的上游版本,但是 Debian 版本有所不同。1.13.0-dittobuild2是该软件包的较新(内部)版本。

我还有另一个包裹,同上,列出ceres=1.13.0-dittobuild1作为依赖项。也就是说,它依赖于较旧ceres 包的版本。

当我尝试使用 apt-get () 安装 ditto-ar 包时apt-get install ditto-ar,安装失败并显示以下输出:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 ditto-ar : Depends: ceres (= 1.13.0-dittobuild1) but 1.13.0-dittobuild2 is to be installed
E: Unable to correct problems, you have held broken packages.

为什么 ditto-ar 明确指出要安装 1.13.0-dittobuild1,但系统却说要安装 ceres 包的 1.13.0-dittobuild2,而我无法安装这个包?

我正在使用 Ubuntu 16.04。

答案1

这不是一个“固定”的包,至少与贴合。除非通过上述 apt 固定或手动版本规范(类似 )另有说明,Apt 始终优先选择软件包的最高版本。apt install ditto-ar ceres=1.13.0-dittobuild1您的软件包的依赖规范无法覆盖该版本。

相关内容