PY-bcrypt installant sur win 7 64bit python
essaie d'installer py-bcrypt sur win7. Python est 64bit. Première erreur Impossible de trouver vcvarsall.chauve. Googled un peu appris que j'avais besoin d'installer mingw. installé maintenant ce
C:toolspython_modulespy-bcrypt-0.2>python setup.py build -c mingw32
running build
running build_py
running build_ext
building 'bcrypt._bcrypt' extension
C:MinGWbingcc.exe -mno-cygwin -mdll -O -Wall -Ic:Python27include -Ic:Python27PC -c bcrypt/bcrypt_python.c -o b
dtemp.win-amd64-2.7Releasebcryptbcrypt_python.o
bcrypt/bcrypt_python.c:29:26: error: expected declaration specifiers or '...' before 'u_int8_t'
bcrypt/bcrypt_python.c:29:38: error: expected declaration specifiers or '...' before 'u_int16_t'
bcrypt/bcrypt_python.c:29:49: error: expected declaration specifiers or '...' before 'u_int8_t'
bcrypt/bcrypt_python.c: In function 'bcrypt_encode_salt':
bcrypt/bcrypt_python.c:56:2: error: too many arguments to function 'encode_salt'
bcrypt/bcrypt_python.c:29:6: note: declared here
error: command 'gcc' failed with exit status 1
aucune idée de ce qu'il faut faire ensuite. je suppose que je ne vais pas utiliser bcrypt et essayer autre chose. Toutes les autres suggestions?
7 réponses
j'ai eu le même problème et je l'ai corrigé en appliquant le correctif trouvé à ce lien:
py-bcrypt_11.patch
a dû l'appliquer manuellement.
de ce fil, la source du problème est
selon http://groups.google.com/group/mpir-devel/msg/2c2d4cc7ec12adbb (drapeaux définis sous les différents OS'es de windows ,cygwins,mingw's et autres) il est préférable d'utiliser _WIN32 au lieu de _MSC_VER, ainsi que le changement de bzero à memset cela se compile à la fois sous MSVC et MingW32.
Espère que ça aide!
il y a une version compilée de py-bcrypt pour windows. Vous pouvez visiter https://bitbucket.org/alexandrul/py-bcrypt/downloads pour télécharger le .fichier exe et installation.
j'ai regardé la source de bcrypt, et je ne peux pas comprendre pourquoi vous obtenez l'erreur que vous êtes (ne pas avoir un système Windows à portée de main pour tester sur le moment). Bien que regardant le pybcrypt issue tracker il semble qu'il a d'autres problèmes de compilation Windows, donc ce n'est probablement pas seulement vous. À une supposition cependant, ajouter "--std=C99 " aux arguments de gcc via extra_compile_args pourrait corriger au moins certaines des erreurs.
à part ça, il y a sont un couple d'alternatives -
-
Bcryptor est une autre implémentation de C-extension bcrypt qui peut être compilée pour votre système.
-
Passlib est une bibliothèque générale de hachage de mots de passe. Bien qu'il s'appuie sur bcryptor / pybcrypt pour le soutien de bcrypt, il a le soutien de builtin pour un certain nombre d'autres hachages de mot de passe qui peuvent travailler pour vous - tels que SHA512-Crypt or PBKDF2-HMAC-SHA512
-
Cryptacular est un autre mot de passe général de hachage de la bibliothèque. Sur Windows, il fournit à la fois bcrypt et PBKDF2-HMAC-SHA512 hashes de mot de passe. .
je suis tombé sur ce fil plutôt vieux en essayant d'obtenir PY-bcrypt installé (via pip) sur Windows 7 en utilisant VS2012. Apparemment, cela ne fonctionne toujours pas (je reçois également le "manque vcvars.chauve-souris" d'erreur).
Il ya un fork dédié Windows pour py-bcrypt appelé py-bcrypt-w32 , que je pourrais installer sans aucun problème en utilisant
pip install py-bcrypt-w32
supposons que vous utilisiez mingw64, vous devriez changer _MSC_VER en _WIN32 sur ifdefs en bcrypt.c, bcrypt_python.C et pybc_blf.h
j'ai eu ce même problème avec python 3.4.1, et aucune des réponses précédentes travaillé. J'ai finalement fait fonctionner le compilateur 64 bits de Visual Studio 2010, et donc cryptacular et py-bcrypt ont été installés avec easy_install. Voir ma réponse détaillée ici: https://stackoverflow.com/a/27033824/3800244
nous sommes en 2016 et j'ai fait face au même problème. Télécharger la roue directement à partir de https://bitbucket.org/alexandrul/py-bcrypt/downloads puis courir après
pip install <whl-file>