Microsoft Windows Python-3.6 erreur D'installation de Phycrypto

pip install pycrypto fonctionne très bien avec python3.5.2 mais échoue avec python3.6 avec l'erreur suivante:

inttypes.h(26): error C2061: erreur de syntaxe: identificateur 'intmax_t'

23
demandé sur Massimiliano Kraus 2017-01-25 07:14:26

5 réponses

le fichier inclut\pyport.h dans le répertoire d'installation de Python n'a pas # include < stdint.h> plus. Cela laisse intmax_t undefined.

une solution de contournement pour Microsoft VC compiler est de forcer l'inclusion stdint.h via OS de la variable d'environnement CL:

  1. Ouvrez l'invite de commande avec des privilèges d'administrateur
  2. exécuter vsvars32.bat de votre version de VC
  3. définir CL = - FI"%VCINSTALLDIR%\INCLUDE\stdint.h"
  4. pip install pycrypto
45
répondu user1602 2017-01-25 04:19:02

j'ai réussi à installer phycrypto 2.6.1 sur python 3.6, Windows 10, Visual Studio 2017.

  1. open "x86_x64 Cross-Tools Command Prompt for VS 2017" avec le privilège administrateur dans le menu Démarrer.
  2. set CL = - FI"%VCINSTALLDIR%Tools\MSVC\14.11.25503\include\stdint.h"
  3. pip install pycrypto

enter image description here

6
répondu Marko Rothstein 2017-10-24 23:33:26

Utiliser PyCrytodome au lieu de pycryto. Pycryto est arrêté et n ' est plus soutenu activement.

6
répondu bhuvan karuturi 2017-11-17 15:46:06

j'ai réussi à installer phycrypo 2.6.1 sur python 3.6 et windows 10.

  1. Définir une variable d'environnement comme ci-dessous. visual studio installed directory
  2. ouvrir cmd.exe
  3. activer virtualenv
  4. télécharger la version 2.6.1 de phycrypto de github et la décompresser.
  5. définir une variable d'environnement pour pycrypto set CL=/FI"%VCINSTALLDIR%\INCLUDE\stdint.h" %CL%
  6. exécuter la commande setup python setup.py install
  7. mon résultat est ici enter image description here

je serais heureux si cela pouvait être aider quelqu'un.

2
répondu user1960422 2017-07-14 05:18:03