Lorsque j'essaie d'utiliser des commandes hg
Mercurial sur la console, j'obtiens toujours cette erreur. J'ai installé Python en utilisant Homebrew et j'utilise Mac OS Catalina v. 10.15.1.
Toute référence serait appréciée. Voici l'erreur que j'obtiens:
brew link openssl --force Warning: Refusing to link macOS-provided software: openssl@1.1 If you need to have openssl@1.1 first in your PATH run: echo 'export PATH="/usr/local/opt/openssl@1.1/bin:$PATH"' >> ~/.zshrc For compilers to find openssl@1.1 you may need to set: export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib" export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include" For pkg-config to find openssl@1.1 you may need to set: export PKG_CONFIG_PATH="/usr/local/opt/openssl@1.1/lib/pkgconfig"
J'ai également essayé de suivre les instructions sur ce problème mais aucune des solutions ne semble fonctionner
hg commit --amend ERROR:root:code for hash md5 was not found. Traceback (most recent call last): File "/usr/local/Cellar/python@2/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module> globals()[__func_name] = __get_hash(__func_name) File "/usr/local/Cellar/python@2/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor raise ValueError('unsupported hash type ' + name) ValueError: unsupported hash type md5 ERROR:root:code for hash sha1 was not found. Traceback (most recent call last): File "/usr/local/Cellar/python@2/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module> globals()[__func_name] = __get_hash(__func_name) File "/usr/local/Cellar/python@2/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor raise ValueError('unsupported hash type ' + name) ValueError: unsupported hash type sha1 ERROR:root:code for hash sha224 was not found. Traceback (most recent call last): File "/usr/local/Cellar/python@2/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module> globals()[__func_name] = __get_hash(__func_name) File "/usr/local/Cellar/python@2/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor raise ValueError('unsupported hash type ' + name) ValueError: unsupported hash type sha224 ERROR:root:code for hash sha256 was not found. Traceback (most recent call last): File "/usr/local/Cellar/python@2/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module> globals()[__func_name] = __get_hash(__func_name) File "/usr/local/Cellar/python@2/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor raise ValueError('unsupported hash type ' + name) ValueError: unsupported hash type sha256 ERROR:root:code for hash sha384 was not found. Traceback (most recent call last): File "/usr/local/Cellar/python@2/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module> globals()[__func_name] = __get_hash(__func_name) File "/usr/local/Cellar/python@2/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor raise ValueError('unsupported hash type ' + name) ValueError: unsupported hash type sha384 ERROR:root:code for hash sha512 was not found. Traceback (most recent call last): File "/usr/local/Cellar/python@2/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module> globals()[__func_name] = __get_hash(__func_name) File "/usr/local/Cellar/python@2/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor raise ValueError('unsupported hash type ' + name) ValueError: unsupported hash type sha512 Traceback (most recent call last): File "/usr/local/bin/hg", line 43, in <module> dispatch.run() File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/hgdemandimport/demandimportpy2.py", line 150, in __getattr__ self._load() File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/hgdemandimport/demandimportpy2.py", line 94, in _load _origimport, head, globals, locals, None, level) File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/hgdemandimport/demandimportpy2.py", line 43, in _hgextimport return importfunc(name, globals, *args, **kwargs) File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/mercurial/dispatch.py", line 625, in <module> class lazyaliasentry(object): File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/mercurial/dispatch.py", line 636, in lazyaliasentry @util.propertycache File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/hgdemandimport/demandimportpy2.py", line 150, in __getattr__ self._load() File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/hgdemandimport/demandimportpy2.py", line 94, in _load _origimport, head, globals, locals, None, level) File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/hgdemandimport/demandimportpy2.py", line 43, in _hgextimport return importfunc(name, globals, *args, **kwargs) File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/mercurial/util.py", line 180, in <module> 'md5': hashlib.md5, File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/hgdemandimport/demandimportpy2.py", line 151, in __getattr__ return getattr(self._module, attr) AttributeError: 'module' object has no attribute 'md5'
11 Réponses :
Réparé pour résoudre ce problème en dissociant d'abord openssl
brew reinstall python@2
Et puis réinstaller python
brew unlink openssl
J'ai également remarqué que lors de l'exécution de 'brew doctor', il y avait un avertissement lié à un dossier openssl trouvé dans / usr / local / include / node /. J'ai supprimé ce dossier avant d'exécuter les commandes ci-dessus (je ne sais pas si elles sont liées)
Je n'avais pas de lien openssl mais la réinstallation de python l'a fait pour moi. Merci!
Je devais relier l'azur-cli avec de la bière
À partir du 10 février 2020, python @ 2 est supprimé de l'homebrew et cette réponse ne fonctionnera pas. Voir la réponse ci-dessus de @Rockallite, qui a parfaitement fonctionné pour moi.
Merci pour la mise à jour @Paul, j'ai marqué la réponse ci-dessus comme la bonne
L'exécution de brew reinstall python@2
ne fonctionnait pas pour mes environnements virtuels Python 2.7 existants. À l'intérieur d'eux, il y avait encore ERROR:root:code for hash sha1 was not found
erreurs.
J'ai rencontré ce problème après avoir exécuté la brew upgrade openssl
. Et voici la solution:
d41d8cd98f00b204e9800998ecf8427e
...qui montre
(my-venv) $ python -c "import hashlib;m=hashlib.md5();print(m.hexdigest())"
Selon la version existante, exécutez:
Cleaning /usr/local/Cellar/openssl/1.0.2t Opt link created for /usr/local/Cellar/openssl/1.0.2t
...qui montre
$ brew switch openssl 1.0.2t
Après cela, exécutez la commande suivante dans un virtualenv Python 2.7:
1.0.2t
...qui montre
$ ls /usr/local/Cellar/openssl
Plus d'erreurs.
Cela m'a aidé sur une mise à jour de mac catalina ou peut-être la bash -> zsh où des tonnes de choses comme celle-ci ont été brisées.
Je n'avais pas 1.0.2q mais faire la même chose avec 1.0.2r fonctionnait également
Merci, je n'aurais jamais compris ça. J'ai eu ce problème après avoir essayé d'installer pipx via homebrew
Oui. Cela fonctionne pour moi. J'ai passé des jours là-dessus et dans la peur de devoir réimaginer ma machine. J'avais essayé de réinstaller python @ 2 de nombreuses fois mais je ne pouvais toujours pas résoudre le problème. Celui-ci fonctionne définitivement. MacOS Mojave 10.14.6.
Des étapes impeccables.
Cela m'a aidé aussi, mais mon homebrew affirmait que j'avais 1.1.1f installé pour openssl en essayant "brew upgrade openssl". Cependant, le passage à la dernière version 1.0.x m'avait permis de continuer.
exécuter le commutateur de brassage openssl [version] l'a fait pour moi, pas besoin de la dernière commande
@FlorentRoques c'est parce que vous auriez eu la même version que l'exemple. Dans mon cas, ls /usr/local/Cellar/openssl
renvoyé la version 1.0.2s
donc j'ai dû exécuter le brew switch openssl 1.0.2s
works avait 2 installations openssl dans brew dont j'avais besoin pour compiler quelque chose ellse
Waouh Waouh Waouh! :-)
Merci! J'ai à la fois 1.0.2q et 1.0.2r dans le dossier et j'ai fait l'étape pour 1.0.2q. Ça marche!
Pouvez-vous expliquer un peu ce que fait l' brew switch
? J'ai essayé votre solution et tout fonctionne maintenant, mais lorsque openssl version
commande de openssl version
cela montre toujours que j'utilise LibreSSL 2.6.5. Je ne sais pas comment python récupère openssl 1.0.2 au lieu de LibreSSL dans mon système @Rockallite
Vous monsieur, méritez une médaille! Présenter clairement les étapes ici est vraiment utile. C'était 1.0.2s
pour moi :)
Merci! Ce problème est survenu dans mon Zshell sur 10.15.4. J'ai vérifié openssl qui est 1.0.2s sur ma machine et le brew switch openssl 1.0.2s
fait le travail.
Merci beaucoup! J'ai rencontré cette erreur lorsque gclient sync
. L'openssl sur mon Mac est 1.0.2s. Je lance donc le brew switch openssl 1.0.2s
.
Je veux donner une médaille à ce gars. Merci beaucoup pour l'aide.
Troisième fois en quelques mois, je suis sauvé par ça! :'RÉ
Désinstaller python, puis effacer le répertoire pyenv
semblait le résoudre pour moi. rm -R ~/.pyenv
Alors maintenant, avec l'installation de zsh et Calalina, il n'y a pas de /usr/local/Cellar/openssl
qu'est-ce qu'un junkie 2.7 à faire?
Je n'ai aucune idée de ce qui se passe, mais cela a fonctionné avec la version 1.0.2q! Merci!
Merci! J'ai eu cette erreur après la mise à jour de macOS. Catalina 10.15.6
Un moyen de doubler le vote? J'ai vu la même chose que @quozqzzu; 1.0.2s. Merci!
Cela a fonctionné pour moi, dans mon cas, la version openssl
était 1.1.1h
, donc la commande à corriger était le brew switch openssl 1.1.1h
Le cas pour moi est que lorsque j'installe les dépendances d'une application web django, cela gâche l'environnement. Lorsque je tape cd
, cela montre la même erreur.
Le problème était la bibliothèque openssl
, elle ne trouve pas les bonnes.
Si vous êtes sur Macintosh, vous pouvez taper
ls /usr/local/Cellar/openssl
pour voir toutes les versions,
brew switch openssl 1.0.XXXX
pour choisir la version openssl disponible.
Ensuite, l'erreur a disparu :)
un liner bash ls /usr/local/Cellar/openssl | xargs brew switch openssl
J'ai travaillé après avoir utilisé la réponse de @poca, puis la réponse ci-dessus
Merci beaucoup, vous êtes une bouée de sauvetage - cela a finalement fonctionné après s'être battu avec lui pendant plus d'une heure.
Lorsque j'importais hashlib, je voyais un message d'erreur indiquant que le hachage md5 n'a pas été trouvé.
J'ai pu résoudre ce problème en dissociant d'abord openssl: brew unink openssl
Ensuite, j'ai désinstallé python 2.7 en utilisant MacPorts: sudo port uninstall python27
Ensuite, j'ai installé python 2.7 en utilisant MacPorts: sudo port install python27
Maintenant, l'importation de hashlib fonctionne :)
Désinstallez simplement python2
$ brew uninstall python@2
S'il y a une erreur:
$ brew uninstall --ignore-dependencies python@2
cela a fonctionné pour moi!
J'ai eu ce problème récemment (2020, mai) avec l'interface de ligne de commande GCP de Google. Il fonctionne également sur le Python 2.7 obsolète.
Il s'agit d'un problème d'installation de Python 2 en panne. mBrew n'installe plus correctement Python 2 avec élégance, car personne ne se soucie d'abondonware.
Conda installe toujours Python 2 dans un environnement; Je l'ai fait.
Mon problème était que plusieurs versions de python étaient installées (python était toujours alias python2 mais je voulais que pip utilise python3). j'ai aussi un bin python3
installé sur mon système
# use pip with python3 $ python3 -m pip install fish
voirGérer plusieurs versions de Python et PIP? pour les détails
La solution suivante a fonctionné pour moi sur MacOS Catalina:
brew tap-new <user>/homebrew-python2 brew extract python@2 <user>/homebrew-python2 brew reinstall /usr/local/Homebrew/Library/Taps/<user>/homebrew-python2/Formula/python@2.7.17.rbl
brew install python@2
)brew unlink openssl
J'ai fait la même chose, mais à la place, à l'étape 2), j'ai brew remove python@2
:) macOS Catalina embarque Python 2.7 intégré et cela semblait moins problématique que de s'en remettre directement. Pour moi, le support de python via brew semblait toujours causer des problèmes quelque part dans ce passé xD
Sur macOS Mojave (10.14.6), cela a fonctionné pour moi:
/usr/local/bin/python
et /usr/local/bin/pip
pour les binaires python
et pip
.Après avoir installé openssl
j'ai eu le même problème. Cette réponse ne m'a pas aidé, mais après la liaison manuelle de libcrypto.1.1.dylib
et libssl.1.1.dylib
tout a commencé à fonctionner. Dans mon cas, c'était:
ln -s /usr/local/opt/openssl/lib/libcrypto.1.1.dylib /usr/local/lib ln -s /usr/local/opt/openssl/lib/libssl.1.1.dylib /usr/local/lib
Mon problème était d'installer pyenv
et de pointer vers une ancienne version de python 2
Désinstaller python @ 2 (python2 était EOL depuis le 1er janvier 2020)
$ pyenv versions system * 2.7.12 (set by /Users/admin/.python-version) 3.4.5 3.7.7 $ pyenv local system $ pyenv global system
puis
$ brew uninstall python@2 Uninstalling /usr/local/Cellar/python@2/2.7.15_1... (4,169 files, 76.0MB)
Votre lien vers le problème 1 est manquant.
Cela ressemble à un problème Python: stackoverflow.com/questions/20399331/… ou stackoverflow.com/questions/41798118/...
Des solutions pour MacOS? J'ai essayé ces solutions mais aucune d'elles ne fonctionne. J'obtiens toujours la même erreur. Lorsque j'essaie de lier openssl au fur et à mesure que j'ai collé ma question, l'erreur est collée là-bas. J'ai aussi essayé d'exécuter ces 4 commandes mais rien ne s'est passé: echo 'export PATH = "/ usr/local/opt/openssl@1.1/bin: $ PATH"' >> ~ / .zshrc export LDFLAGS = "- L / usr / local /opt/openssl@1.1/lib "export CPPFLAGS =" - I/usr/local/opt/openssl@1.1/include "export PKG_CONFIG_PATH =" / usr/local/opt/openssl@1.1/lib/pkgconfig "
Curieusement, j'ai eu le même problème avec YCM sous Macvim et cette réponse a résolu mon problème.