Ich habe die Ratschläge in dieser Frage gelesen und befolgt, ohne Erfolg. Ich versuche, libssl1.0.0:i386
zu installieren auf meiner 14.04-Box (amd64), aber wenn ich versuche, dies über APT zu tun, erhalte ich die folgende Fehlermeldung:
[email protected]:~$ sudo apt-get install libssl1.0.0:i386
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 resolve the situation:
The following packages have unmet dependencies:
default-jre-headless : Depends: openjdk-7-jre-headless (>= 7~u3-2.1.1) but it is not going to be installed
openjdk-7-jre : Depends: openjdk-7-jre-headless (= 7u55-2.4.7-1ubuntu1) but it is not going to be installed
Recommends: libgnome2-0 but it is not going to be installed
Recommends: libgnomevfs2-0 but it is not going to be installed
openssh-client : Depends: libssl1.0.0 (>= 1.0.1) but it is not going to be installed
openssh-server : Depends: libssl1.0.0 (>= 1.0.1) but it is not going to be installed
Depends: openssh-sftp-server but it is not going to be installed
Recommends: ssh-import-id but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
Ich habe alle aktuellen Updates installiert. Ich habe apt-get -f install
ausgeführt . Ich habe sichergestellt, dass alle Repositories in den Softwarequellen aktiviert sind.
Woran könnte das liegen?
Aktualisierung:
Hier sind die Inhalte von apt-cache policy libssl1.0.0
:
libssl1.0.0:
Installed: 1.0.1g-1ppa1~trusty1
Candidate: 1.0.1g-1ppa1~trusty1
Version table:
*** 1.0.1g-1ppa1~trusty1 0
100 /var/lib/dpkg/status
1.0.1f-1ubuntu2.1 0
500 http://ca.archive.ubuntu.com/ubuntu/ trusty-updates/main amd64 Packages
500 http://security.ubuntu.com/ubuntu/ trusty-security/main amd64 Packages
1.0.1f-1ubuntu2 0
500 http://ca.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
… und apt-cache policy libssl1.0.0:i386
:
libssl1.0.0:i386:
Installed: (none)
Candidate: 1.0.1f-1ubuntu2.1
Version table:
1.0.1f-1ubuntu2.1 0
500 http://ca.archive.ubuntu.com/ubuntu/ trusty-updates/main i386 Packages
500 http://security.ubuntu.com/ubuntu/ trusty-security/main i386 Packages
1.0.1f-1ubuntu2 0
500 http://ca.archive.ubuntu.com/ubuntu/ trusty/main i386 Packages
Akzeptierte Antwort:
Diese Art von Fehlermeldung weist normalerweise darauf hin, dass ein Paket installiert wird, das mit anderen installierten Paketen in Konflikt steht und das Entfernen anderer abhängiger Pakete erzwungen hätte. Bei gleichzeitiger Installation desselben Pakets für mehr als eine Architektur (siehe MultiArch), amd64
und i386
in diesem Fall müssen die Versionen der zu installierenden Pakete exakt übereinstimmen .
Was in diesem Fall wahrscheinlich passiert ist (bestätigt durch unsere Diskussion in den Kommentaren), ist, dass libssl1.0.0
auf eine PPA-Version aktualisiert wurde, die neuer ist als jede Version, die in den Ubuntu-Repositories verfügbar ist. Wenn das PPA später deaktiviert oder dekonfiguriert wurde, bleiben die neueren Pakete normalerweise installiert. Lesen Sie diese Frage für den Unterschied zwischen dem Deaktivieren und Löschen eines PPA. Wenn Sie das PPA jedoch bereits aus Ihrer apt-Konfiguration entfernt haben, müssen Sie die Pakete, die zuvor vom PPA aktualisiert wurden, manuell herabstufen.
Um libssl1.0.0:i386
installieren zu können müssen Sie über dieselbe Version von libssl1.0.0:amd64
verfügen aus dem Repository installiert. Und weil der openssl
Quellpaket mehrere verwandte Binärpakete erstellt, müssen Sie sicherstellen, dass alle seine Pakete ebenfalls in derselben Version vorliegen. Wenn Sie nicht alle Pakete angeben, die Sie downgraden möchten, wird apt lieber deinstallieren als downgraden. In diesem Fall, wenn Sie libssl1.0.0
haben , libssl-dev
, und openssl
von einem PPA installiert haben, sollten Sie
sudo apt-get install libssl1.0.0/trusty libssl-dev/trusty openssl/trusty
Antworten Sie auf apt-get
mit ja Aufforderung zum Herabstufen der Pakete. Sie sollten jetzt libssl1.0.0:i386
installieren können Paket aus dem Repository.