Microsoft Windows Python-3.6 PyCrypto installation error

后端 未结 8 1988
陌清茗
陌清茗 2020-11-29 00:30

pip install pycrypto works fine with python3.5.2 but fails wiht python3.6 with the following error:

inttypes.h(26): error C2061: syntax e

相关标签:
8条回答
  • 2020-11-29 00:47

    For me this fixes it:

    with Python 2, I have

    sudo apt-get install python-dev  \
         build-essential libssl-dev libffi-dev \
         libxml2-dev libxslt1-dev zlib1g-dev \
         ...
    

    with Python 3, I need

    sudo apt-get install python3 python-dev python3-dev \
         build-essential libssl-dev libffi-dev \
         ...
    

    Installing python-dev python3-dev fixes it for me!

    0 讨论(0)
  • 2020-11-29 00:52
    • Uninstall your current Python version

    • Install Python for amd64 architecture

    • Follow the other accepted solutions

        • open "x86_x64 Cross-Tools Command Prompt for VS 2017"
        • Add the new enviroment varible for your Visual Studio MSVC install path
        • set CL=-FI"%VCINSTALLDIR%Tools\MSVC\14.11.25503\include\stdint.h"
        • pip install pycrypto
    0 讨论(0)
  • 2020-11-29 00:53

    I've succeeded install pycrypto 2.6.1 on python 3.6, Windows 10, Visual Studio 2017.

    1. Open "x86_x64 Cross-Tools Command Prompt for VS 2017" with administrator privilege in start menu.

    2. set CL=-FI"%VCINSTALLDIR%Tools\MSVC\14.11.25503\include\stdint.h"

    3. pip install pycrypto

    0 讨论(0)
  • 2020-11-29 00:56

    For ppl who is encountering same situation as mine:

    Env

    • Windows 10 Enterprise v10.0.18363 Build 18363
    • Python 3.8

    Steps

    1. Download Microsoft C++ Build Tools at https://visualstudio.microsoft.com/visual-cpp-build-tools/
    2. Run above setup exe and install default components
      • MSVC v142 - VS 2019 C++ x64/x86 build tools
      • Windows 10 SDK
      • C++ CMake tools for windows
      • Testing tools core features - Build Tools
      • C++ AddressSanitizer(Experimental)
    3. Reboot PC
    4. Start menu > x64 Native Tools Command Prompt for VS 2019, a cmd window will pop up
    5. Execute set CL=-FI"C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.27.29110\include\stdint.h"
    6. Run pip install pycrypto in a cmd window(may need admin privilege) 1
    0 讨论(0)
  • 2020-11-29 01:05

    Use PyCryptodome instead of pycrypto. pycrypto is discontinued and is no longer actively supported. PyCryptodome exposes almost the same API as pycrypto (source).

    0 讨论(0)
  • 2020-11-29 01:08

    Thanks to user1960422's answer.
    PowerShell steps for pycrypto 2.6.1 (via 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

    I also needed to follow the answer in: https://stackoverflow.com/a/24822876/8751739 to fix a winrandom module error.

    0 讨论(0)
提交回复
热议问题