나는 아무것도 작동하지 않고 다른 모든 Google 소스와 SO 스레드를 읽었습니다.
Python 2.7.3 32bit
에 설치되었습니다 Windows 7 64bit
. PyCrypto 다운로드, 추출 및 설치 시도"Unable to find vcvarsall.bat".
그래서 MinGW를 설치하고 선택한 컴파일러로 설치 라인에 고정시킵니다. 그러나 나는 오류를 얻는다"RuntimeError: chmod error".
이 문제를 어떻게 해결할 수 있습니까? 나는 같은 결과를주는 pip를 사용해 보았습니다. 사전 빌드 된 PyCrypto 2.3 바이너리를 찾아서 설치했지만 시스템에서 찾을 수 없습니다 (작동하지 않음).
어떤 아이디어?
답변
Python.org에서 배포 한 Visual Studio 바이너리와 호환되는 C / C ++ 개발 환경이 설치되어 있지 않은 경우 Windows 바이너리를 사용할 수있는 순수한 Python 패키지 또는 패키지 만 설치해야합니다.
다행히 Windows 용 PyCrypto 바이너리는 다음과 같습니다.
http://www.voidspace.org.uk/python/modules.shtml#pycrypto
업데이트 :
@Udi가 아래 주석에서 제안하는 것처럼 다음 명령도 설치 pycrypto
되어 사용할 수 있습니다 virtualenv
.
easy_install http://www.voidspace.org.uk/python/pycrypto-2.6.1/pycrypto-2.6.1.win32-py2.7.exe
Python 3.5 용 빌드를 찾고 있다면 Python 3.5의 PyCrypto를 참조하십시오.
답변
Microsoft는 최근 Python 2.7 용 독립형 전용 Microsoft Visual C ++ 컴파일러를 출시했습니다 . Python 2.7을 사용하는 경우 해당 컴파일러 및 Setuptools 6.0 이상을 설치하면 C 확장자를 가진 대부분의 패키지가 즉시 컴파일됩니다.
답변
몇 년과 몇 년이 지난 후 , 파이썬은 마침내 wheel
컴파일러를 사용하지 않고도 Windows에 바이너리 확장을 설치할 수있는 바이너리 배포에 동의했습니다 pip install packagename
. 이 인기있는 패키지의 목록 그들의 상태는. Pycrypto는 아직 없지만 lxml, PySide 및 Scrapy가 있습니다.
2015 년 11 월 수정 : pip uninstall pycrypto
& pip install pycryptodome
. 그것은이다 pycrypto
새로운 기능 포크와는 휠 지원합니다. 이 pycrypto
코드는을 대체 하므로 기존 코드가 계속 작동합니다 ( https://pycryptodome.readthedocs.org/en/latest/src/examples.html 참조 )
답변
VS2010의 경우 :
SET VS90COMNTOOLS=%VS100COMNTOOLS%
VS2012의 경우 :
SET VS90COMNTOOLS=%VS110COMNTOOLS%
그런 다음 전화 :
pip install pyCrypto
답변
일반적으로
vcvarsall.bat
Visual C ++ 컴파일러의 일부이므로 설치하려는 것을 설치해야합니다. 파이썬이 Visual Studio 툴체인으로 컴파일 된 경우에도 MingGW를 다루려고 시도하지 마십시오. 심지어 버전 은 Microsoft 툴 체인의 중요합니다. VS 2008로 컴파일 된 Python은 VS 2010으로 컴파일 된 확장에서 작동하지 않습니다!
PyCrypto는 Python 버전과 동일한 컴파일러로 컴파일해야합니다. Google은 “vcvarsall.bat를 찾을 수 없습니다” 는 문제의 근원이기 때문에 Windows에서 Python 확장을 컴파일하는 데 매우 일반적인 문제입니다.
이 링크를 사용하는 모든 시스템 에서이 정보를 얻으려면 많은 정보와 읽을 거리가 있습니다.
Visual Studio 2010을 사용하거나 Visual Studio 2008을 사용하지 않도록주의
내가 아는 한 다음은 여전히 사실입니다. 이것은 2010 년 6 월에 python.org에서 제공되는 Python 설치 프로그램에 대해 VS 2010 Express를 사용하여 확장 기능을 구축하려는 것을 언급하는 위의 링크에 게시되었습니다.
이렇게하면 조심하십시오. python.org의 Python 2.6 및 2.7은 Visual Studio 2008 컴파일러로 빌드됩니다. Python과 동일한 CRT (msvcr90.dll)와 연결해야합니다.
Visual Studio 2010 Express가 잘못된 CRT 버전 : msvcr100.dll과 연결합니다.
이렇게하면 Visual Studio 2010 Express를 사용하여 Python도 다시 빌드해야합니다. Windows 용 표준 Python 바이너리 설치 프로그램을 사용할 수 없습니다. Visual Studio 2010 (Express)과 다른 컴파일러로 빌드 된 C / C ++ 확장도 사용할 수 없습니다.
의견 : 이것이 OSX의 모든 심각한 개발 작업으로 인해 Windows를 포기한 이유 중 하나입니다!
답변
PyCryptodome 은 pypi에서 사용할 수있는 Windows 휠과 거의 호환되는 PyCrypto 포크입니다 .
간단한 방법으로 설치할 수 있습니다.
pip install pycryptodome
이 웹 사이트에는 Microsoft 컴파일러를 사용하여 소스에서 빌드하는 지침도 포함되어 있습니다.
답변
and pycrypto
사용하여 컴파일 할 수있었습니다 . 이것은 설치 했거나 설치 한 것으로 가정합니다 .MinGW32
MSYS
pip
easy_install
내가 한 방법은 다음과 같습니다.
1) MinGW32를 설치하십시오 . 이 설명을 위해에 설치되어 있다고 가정 해 봅시다 C:\MinGW
. 권장하는 설치 프로그램을 사용할 때 .
MSYS가 설치해야하는 C ++ 컴파일러를 선택하십시오.MinGW
2)에 추가 c:\mingw\bin,c:\mingw\mingw32\bin,C:\MinGW\msys\1.0, c:\mingw\msys\1.0\bin and c:\mingw\msys\1.0\sbin
하십시오 %PATH%
. 익숙하지 않은 경우이 문서 가 매우 유용합니다.
3) 검색 바에서 실행 msys
하면 MSYS 터미널이 열립니다. 에 익숙한 사람들에게는 Cygwin
비슷한 방식으로 작동합니다.
4) pip install pycrypto
이 후 MSYS 터미널 내에서 오류없이 실행해야합니다.