Versuch, libssl-dev unter Ubuntu 14.04.2 zu installieren
$ make
fatal error: openssl/sha.h: No such file or directory
compilation terminated.
$ sudo apt-get install libssl-dev
The following packages have unmet dependencies:
libssl-dev : Depends: zlib1g-dev but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
$ sudo apt-get install zlib1g-dev
The following packages have unmet dependencies:
zlib1g-dev : Depends: zlib1g (= 1:1.2.3.4.dfsg-3ubuntu4) but 1:1.2.8.dfsg-1ubuntu1 is to be installed
E: Unable to correct problems, you have held broken packages.
Wie kann ich das zurückgehaltene Paket entfernen und das richtige installieren?
ubuntu
package-management
Sam Healey
quelle
quelle
sudo apt update
und / odersudo apt upgrade
?Antworten:
Versuchen Sie zunächst Folgendes einzugeben:
sudo dpkg --configure -a
Dies wird einen großen Beitrag zur Behebung defekter Abhängigkeiten leisten. Wenn das nicht ausreicht, versuchen Sie:
sudo apt-get install -f
Dann bereinigen und aktualisieren:
sudo apt-get clean && sudo apt-get update
Dann aktualisiere:
sudo apt-get upgrade
(sage 'y' zu Upgrades)Wenn Sie die Meldung erhalten, dass einige Pakete "zurückgehalten" werden, gehen Sie wie folgt vor:
sudo apt-get dist-upgrade
Führen Sie nun diese beiden Befehle aus:
Dann sehen Sie, was passiert, wenn Sie eingeben:
sudo apt-get install libssl-dev
Wenn es immer noch nicht funktioniert, versuchen Sie Folgendes:
Wenn es immer noch nicht funktioniert, öffnen Sie den Synaptic Package Manager (sollte sich in Ihrem Launcher befinden. Wenn Sie ihn nicht finden, geben Sie am Terminal ein
synaptic-pkexec
).Suche nach
zlib1g-dev
. Wenn das Kästchen neben zlib1g-dev nicht grün ist, klicken Sie darauf und wählen Sie "Zur Installation markieren". Wenn Sie mehr als eine Version sehen, wählen Sie1:1.2.8.dfsg-1ubuntu1
. Dann suchen Sie nachlibssl-dev
. Wenn das Kästchen neben libssl-dev nicht grün ist, klicken Sie darauf und wählen Sie "Zur Installation markieren".Wählen Sie dann "Übernehmen".
quelle
apt-cache policy zlib1g-dev
undgrep -P '^[ \t]*[^#[ \t]+' /etc/apt/sources.list /etc/apt/sources.list.d/*.list
E: Command line option 'P' [from -P] is not known.
Sie müssen nach allen Dateien suchen, die zu Ihrem Paket gehören, diese löschen und anschließend neu installieren.
Wiederholen Sie den zweiten Befehl für jede Datei und installieren Sie sie anschließend erneut.
quelle
hat bei mir funktioniert, als ich
libcurl4-openssl-dev
auf meinem Ubuntu 14.04LTS installieren wollte .Einige abhängige Bibliotheken wurden nicht auf meinem Computer installiert, und mit dem aptitude-Tool kann ich die erforderlichen Bibliotheken / Pakete interaktiv installieren / downgraden, um sie installieren zu können
libcurl4-openssl-dev
.quelle