pip install pycrypto
可以正常使用python3.5.2但是因为python3.6而失败并出现以下错误:
inttypes.h(26):错误C2061:语法错误:标识符' intmax_t'
答案 0 :(得分:55)
Python安装目录中的文件include \ pyport.h没有 #include< stdint.h> 了。这留下 intmax_t 未定义。
Microsoft VC编译器的解决方法是通过OS环境变量 CL 强制包含 stdint.h :
答案 1 :(得分:18)
感谢user1960422的回答。
适用于pycrypto 2.6.1的PowerShell步骤(通过simple-crypt)/ Python 3.6 / Windows 10:
$env:VCINSTALLDIR="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC"
$env:CL="-FI`"$env:VCINSTALLDIR\INCLUDE\stdint.h`""
Successful simple-crypt / pycrypto install
我还需要按照https://stackoverflow.com/a/24822876/8751739中的答案修复winrandom
模块错误。
答案 2 :(得分:13)
我已成功在python 3.6,Windows 10,Visual Studio 2017上安装pycrypto 2.6.1。
答案 3 :(得分:12)
使用 PyCryptodome 代替 pycrypto 。 pycrypto是discontinued,不再受到积极支持。 PyCryptodome暴露几乎与pycrypto(source)相同的API。
答案 4 :(得分:3)
我已成功在python 3.6和windows 10上安装pycrypo 2.6.1。
答案 5 :(得分:1)
卸载当前的Python版本
为amd64体系结构安装Python
遵循其他可接受的解决方案
set CL=-FI"%VCINSTALLDIR%Tools\MSVC\14.11.25503\include\stdint.h"
pip install pycrypto
答案 6 :(得分:0)
对我来说,它可以解决此问题:
使用Python 2,我有
sudo apt-get install python-dev \
build-essential libssl-dev libffi-dev \
libxml2-dev libxslt1-dev zlib1g-dev \
...
我需要使用Python 3
sudo apt-get install python3 python-dev python3-dev \
build-essential libssl-dev libffi-dev \
...
安装python-dev python3-dev
可以为我修复!
答案 7 :(得分:0)
对于遇到与我相同情况的人:
环境
步骤
set CL=-FI"C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.27.29110\include\stdint.h"
pip install pycrypto
(可能需要管理员权限)
1