apt-cache в Debian 6.0 отображает пакет и как зависимость, и как конфликт одновременно

Может кто-нибудь объяснить, как пакет syslinux может зависеть от syslinux-common и конфликтовать с ним:

martin@IBM:~$ dpkg -l syslinux syslinux-common
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                      Version                   Description
+++-=========================-=========================-==================================================================
un  syslinux                  <none>                    (no description available)
un  syslinux-common           <none>                    (no description available)
martin@IBM:~$ apt-cache depends syslinux
syslinux
  Depends: libc6
  Depends: syslinux-common
  Suggests: dosfstools
  Suggests: mtools
  Conflicts: syslinux-common
  Replaces: syslinux-common
martin@IBM:~$ 

Или как понять выход apt-cache depends <packagename>?

1 ответ

Решение

Если вы посмотрите на вывод apt-cache show syslinux это, вероятно, прольет больше света:

Для краткости я показываю только те поля, на которые ссылаюсь, начиная со второго результата (самая высокая версия) и заканчивая командой выше:

Package: syslinux
Version: 2:4.05+dfsg-6+deb7u1
Replaces: syslinux-common
Depends: libc6 (>= 2.7), libuuid1 (>= 2.16), syslinux-common (= 2:4.05+dfsg-6+deb7u1)
Recommends: mtools
Suggests: dosfstools, os-prober
Breaks: syslinux-common (<< 2:4.05+dfsg-6+deb7u1)

Как вы можете видеть, syslinux 2:4.05+dfsg-6+deb7u1 зависит от syslinux-common 2:4.05+dfsg-6+deb7u1 и ломает любую версию syslinux-common менее 2: 4.05 + dfsg-6 + deb7u1,

apt-cache depends это простой инструмент, и он почти наверняка объединяет здесь "конфликты" и "разрывы", и именно так вы получаете syslinux, зависящий и конфликтующий с syslinux-common. Если apt-cache depends показывал номера версий было бы понятнее.

Другие вопросы по тегам