Essayer d'installer libssl-dev sur Ubuntu 14.04.2
$ 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.
Comment puis-je supprimer le package retenu et installer le correct?
Tout d'abord, essayez de saisir ceci: Sudo dpkg --configure -a
Cela contribuera grandement à corriger les dépendances brisées. Si cela ne suffit pas, essayez: Sudo apt-get install -f
Puis nettoyez et mettez à jour: Sudo apt-get clean && Sudo apt-get update
Ensuite, mettez à niveau: Sudo apt-get upgrade
(dites "y" aux mises à niveau)
Si vous recevez un message indiquant que certains packages sont "bloqués", procédez comme suit:
Sudo apt-get dist-upgrade
Maintenant, faites ces deux commandes:
Sudo apt-get purge zlib1g-dev
Sudo apt-get autoremove
Ensuite, voyez ce qui se passe lorsque vous entrez: Sudo apt-get install libssl-dev
Si cela ne fonctionne toujours pas, essayez ceci:
Sudo aptitude install libssl-dev zliblg-dev=1:1.2.8.dfsg-1ubuntu1
Si cela ne fonctionne toujours pas, ouvrez Synaptic Package Manager (Il devrait être dans votre lanceur. Si vous ne le trouvez pas, alors sur le terminal entrez synaptic-pkexec
).
Rechercher zlib1g-dev
. Si la case à côté de zlib1g-dev n'est pas verte, cliquez dessus et sélectionnez "Marquer pour l'installation". Si vous voyez plusieurs versions, choisissez 1:1.2.8.dfsg-1ubuntu1
. Recherchez ensuite libssl-dev
. Si la case à côté de libssl-dev n'est pas verte, cliquez dessus et sélectionnez "Marquer pour l'installation".
Sélectionnez ensuite "Appliquer".
Vous devez rechercher tous les fichiers liés à votre package et les purger, puis réinstaller.
Sudo dpkg --list
Sudo apt-get purge "file-name"
répétez la deuxième commande avec chaque fichier, puis réinstallez-le.
J'ai eu ce problème et l'ai résolu comme suit: 1) Ouvrez l'utilitaire Logiciels et mises à jour 2) Allez dans l'onglet 'Mises à jour' 3) Assurez-vous que toutes les options sont sélectionnées:
+ Important security updates
+ Recommended updates
+ Unsupported updates
4) Sudo apt update && Sudo apt upgrade
5) redémarrer
Sudo aptitude install lib_name_depending
travaillé pour moi quand je voulais installer libcurl4-openssl-dev
sur mon Ubuntu 14.04LTS.
Plusieurs bibliothèques dépendantes n'ont pas été installées sur ma machine, et avec l'utilisation de l'outil aptitude, j'arrive à installer/rétrograder de manière interactive les bibliothèques/packages nécessaires pour pouvoir installer libcurl4-openssl-dev
.
Comment je l'ai corrigé quand il a dit des paquets cassés, il y avait un paquet répertorié dessus. J'ai exécuté Sudo apt-get install (nom du package), puis j'ai exécuté Sudo apt-get upgrade, puis cela a fonctionné!