web-dev-qa-db-ja.com

一部のパッケージが競合するのはなぜですか?

Oneiricにアップグレードした後、パッケージマネージャーで問題が発生しました(libc6、zlib1gパッケージなど、システムの半分を削除したかったため)。適性との戦いの間に、私はいくつかのパッケージが自分自身と衝突することを示すメタ情報を持っていることに気付きました。例:

% aptitude show libc-bin
Package: libc-bin                        
Essential: yes
New: yes
State: installed
Automatically installed: no
Version: 2.13-20ubuntu5
Priority: required
Section: libs
Maintainer: Ubuntu Developers <[email protected]>
Uncompressed Size: 3,420 k
Conflicts: libc-bin
Breaks: libc0.1 (< 2.10), libc0.1 (< 2.10), libc0.3 (< 2.10), libc0.3 (< 2.10), libc6 (< 2.10), libc6 (< 2.10), libc6.1 (< 2.10), libc6.1 (< 2.10)
Replaces: libc0.1, libc0.1, libc0.3, libc0.3, libc6, libc6, libc6.1, libc6.1
Provides: libc-bin
Provided by: libc-bin
Description: Embedded GNU C Library: Binaries

Conflicts: libc-bin行を参照してください?もう一つ:

% aptitude show qdbus   
Package: qdbus                           
New: yes
State: installed
Automatically installed: no
Version: 4:4.7.4-0ubuntu8.1
Priority: optional
Section: libs
Maintainer: Kubuntu Developers <[email protected]>
Uncompressed Size: 213 k
Depends: libc6 (>= 2.3.4), libgcc1 (>= 1:4.1.1), libqt4-dbus (= 4:4.7.4-0ubuntu8.1), libqt4-xml (= 4:4.7.4-0ubuntu8.1), libqtcore4 (= 4:4.7.4-0ubuntu8.1), libstdc++6 (>= 4.1.1)
Conflicts: qdbus
Breaks: libqt4-dbus (< 4:4.7.3-4ubuntu5), libqt4-dbus (< 4:4.7.3-4ubuntu5), qt4-dev-tools (< 4:4.7.3-4ubuntu6), qt4-dev-tools (< 4:4.7.3-4ubuntu6)
Replaces: libqt4-dbus (< 4:4.7.3-4ubuntu5), libqt4-dbus (< 4:4.7.3-4ubuntu5), qt4-dev-tools (< 4:4.7.3-4ubuntu6), qt4-dev-tools (< 4:4.7.3-4ubuntu6)
Provides: qdbus
Provided by: qdbus
Description: Qt 4 Dbus Tool

同じ「自身との競合」機能。

パッケージマネージャーの問題を解決しましたが、問題は依然として気になります。パッケージがそれ自体で競合する場合、それはどういう意味ですか?これは何に使用されますか?

16
ulidtko

OneiricはMulti-Archをサポートしています。つまり、異なるアーキテクチャのパッケージ(現在はi386とAMD64、別名32ビットと64ビット)を同時にインストールできます。一部のパッケージは同時にインストールできません(libc6:i386やlibc6:AMD64など)。 aptitudeこれらの場合は処理できません したがって、これらのパッケージを削除することをお勧めします。 apt-getをすぐに使用することをお勧めします。

apt-cache show libc-binを使用すると、この競合について言及している行が表示されます。

マルチアーチ:外国

このフィールドの説明は http://wiki.debian.org/Multiarch/Implementation#Multi-Arch:_foreign_support_packages にあります。

25
Lekensteyn

適性はあなたに全体の物語を示していません。

$ apt-cache depends libc-bin | grep Conflicts
  Conflicts: libc-bin:i386

私は64ビット版をインストールしているので、実際には32ビット版と競合しているだけです。

8
Oli

bug 831768 に遭遇しました。

aptitudeはmultiarchをまだ理解していません。恐れています。これが解決されるまで、aptitudeを避けるのが最善です。 apt-getで生き残ることができます。

7
tumbleweed