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?

5
demandé sur pocorschi 2011-08-17 21:33:02

7 réponses

j'ai eu le même problème et je l'ai corrigé en appliquant le correctif trouvé à ce lien:

http://code.google.com/p/py-bcrypt/issues/detail?can=2&start=0&num=100&q=&colspec=ID%20Type%20Status%20Priority%20Milestone%20Owner%20Summary&groupby=&sort=&id=1

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!

2
répondu Ingrid Morstrad 2012-06-12 14:50:34

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.

8
répondu Yang 2012-12-06 03:00:22

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. .

3
répondu Eli Collins 2011-08-17 19:24:29

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
3
répondu MartinStettner 2013-11-06 10:52:59

supposons que vous utilisiez mingw64, vous devriez changer _MSC_VER en _WIN32 sur ifdefs en bcrypt.c, bcrypt_python.C et pybc_blf.h

0
répondu sherpya 2011-11-09 04:21:50

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

0
répondu neRok 2017-05-23 12:24:33

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>
0
répondu DevC 2016-07-26 16:12:01