Mengapa beberapa paket bertentangan dengan diri mereka sendiri?

16

Setelah upgrade ke Oneiric saya memiliki beberapa masalah dengan manajer paket (ingin menghapus setengah dari sistem saya, termasuk libc6, paket zlib1g dll). Selama pertarungan dengan bakat saya telah memperhatikan bahwa beberapa paket memiliki meta-informasi yang menyatakan bahwa mereka bertentangan dengan diri mereka sendiri. Contoh:

% 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

Lihat Conflicts: libc-bingarisnya? Satu lagi:

% 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

Fitur "konflik dengan dirinya sendiri" yang sama.

Saya telah menyelesaikan masalah saya dengan manajer paket sekarang, tetapi pertanyaannya masih mengganggu saya: apa artinya ketika sebuah paket bertentangan dengan sendirinya? Untuk apa ini digunakan?

ulidtko
sumber

Jawaban:

25

Oneiric mendukung Multi-Arch, yaitu, memungkinkan Anda untuk menginstal paket arsitektur yang berbeda secara bersamaan (saat ini i386 dan amd64 alias 32-bit dan 64-bit). Beberapa paket tidak dapat diinstal secara bersamaan (seperti libc6: i386 dan libc6: amd64). aptitude tidak dapat menangani kasus ini dan oleh karena itu berpikir bahwa itu mungkin ide yang baik untuk menghapus paket-paket itu. Dianjurkan untuk digunakan apt-getsekarang.

Jika Anda menggunakan apt-cache show libc-bin, Anda dapat melihat baris yang menyebutkan konflik ini:

Multi-Arch: asing

Deskripsi bidang ini dapat ditemukan di http://wiki.debian.org/Multiarch/Implementation#Multi-Arch:_foreign_support_packages

Lekensteyn
sumber
8

Aptitude tidak menunjukkan keseluruhan cerita kepada Anda.

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

Saya sedang menginstal 64bit sehingga sebenarnya hanya bertentangan dengan mitra 32bitnya.

Oli
sumber
7

Anda mengalami bug 831768 .

aptitudeSaya belum mengerti multiarch. Yang terbaik adalah menghindari aptitudesampai ini diselesaikan. Seseorang bisa bertahan hidup apt-get.

tumbleweed
sumber