Warum stehen einige Pakete in Konflikt mit sich selbst?

16

Nach einem Upgrade auf Oneiric hatte ich einige Probleme mit dem Paketmanager (er wollte die Hälfte meines Systems entfernen, einschließlich libc6, zlib1g-Pakete usw.). Während des Kampfes mit Begabung ist mir aufgefallen, dass einige Pakete Meta-Informationen enthalten, die besagen, dass sie mit sich selbst in Konflikt stehen. Beispiele:

% 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

Sehen Sie die Conflicts: libc-binLinie? Einer noch:

% 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

Die gleiche Funktion "Konflikte mit sich selbst".

Ich habe meine Probleme mit dem Paketmanager gelöst, aber die Frage stört mich immer noch: Was bedeutet es, wenn ein Paket in Konflikt mit sich selbst gerät? Wofür wird das verwendet?

ulidtko
quelle

Antworten:

25

Oneiric unterstützt Multi-Arch, dh, Sie können Pakete mit verschiedenen Architekturen gleichzeitig installieren (derzeit i386 und amd64, auch bekannt als 32-Bit und 64-Bit). Einige Pakete können nicht gleichzeitig installiert werden (wie libc6: i386 und libc6: amd64). aptitude Ich kann diese Fälle nicht behandeln und halte es daher für eine gute Idee, diese Pakete zu entfernen. Es wird empfohlen, apt-getjetzt zu verwenden .

Wenn Sie verwenden apt-cache show libc-bin, können Sie die Zeile sehen, die diesen Konflikt erwähnt:

Multi-Arch: fremd

Eine Beschreibung dieses Feldes finden Sie unter http://wiki.debian.org/Multiarch/Implementation#Multi-Arch:_foreign_support_packages

Lekensteyn
quelle
8

Aptitude zeigt Ihnen nicht die ganze Geschichte.

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

Ich bin auf einer 64-Bit-Installation, so dass es eigentlich nur mit seinem 32-Bit-Gegenstück in Konflikt steht.

Oli
quelle
7

Sie haben Fehler 831768 ausgeführt .

aptitudeverstehe multiarch leider noch nicht Es ist am besten zu vermeiden, aptitudebis dies behoben ist. Man kann mit überleben apt-get.

Tumbleweed
quelle