2009-11-06 8 views
29

wpadłem python setup.py install w konsoli systemu Windows XP, a zgłaszane w następujący sposób:PyCrypto nie w pełni zainstalowanych w systemie Windows XP

running install 
running build 
running build_py 
running build_ext 
warning: GMP library not found; Not building Crypto.PublicKey._fastmath. 
building 'Crypto.Random.OSRNG.winrandom' extension 
error: None 

Kiedy próbuję uruchomić skrypt z import Crypto.Cipher.AES, to nie działa, mówiąc:

ImportError: cannot import name AES 

Jak mogę to naprawić?

Odpowiedz

43

W systemie Windows może być łatwiejsze instalowanie PyCrypto za pomocą gotowego instalatora systemu Windows. Witryna Voidspace ma numer PyCrypto 2.1 and 2.3 installers for Python 2.2-2.7.

+0

zadziałało! dzięki. – jay

+0

brak wersji dla win64 :( – tovmeod

+1

Wersja PyCrypto 2.6 Voidspace zawiera wersje 32-bitowe i 64-bitowe dla każdej obsługiwanej wersji Pythona –

0

Można użyć PyPM zainstalować (pre-zbudowany pakiet binarny) pycrypto:

C:> pypm install pycrypto 
Ready to perform these actions: 
The following packages will be installed: 
pycrypto-2.0.1 
Get: [pypm.activestate.com] pycrypto 2.0.1-1 
Installing pycrypto-2.0.1 

Do listy plików zainstalowanych wpisz:

C:> pypm files pycrypto 
C:\Users\sridharr\AppData\Roaming\Python\Python26 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Cipher 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Cipher\AES.pyd 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Cipher\ARC2.pyd 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Cipher\ARC4.pyd 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Cipher\Blowfish.pyd 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Cipher\CAST.pyd 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Cipher\DES.pyd 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Cipher\DES3.pyd 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Cipher\IDEA.pyd 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Cipher\RC5.pyd 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Cipher\XOR.pyd 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Cipher\__init__.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Hash 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Hash\HMAC.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Hash\MD2.pyd 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Hash\MD4.pyd 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Hash\MD5.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Hash\RIPEMD.pyd 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Hash\SHA.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Hash\SHA256.pyd 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Hash\__init__.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Protocol 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Protocol\AllOrNothing.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Protocol\Chaffing.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Protocol\__init__.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\PublicKey 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\PublicKey\DSA.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\PublicKey\ElGamal.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\PublicKey\RSA.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\PublicKey\__init__.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\PublicKey\pubkey.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\PublicKey\qNEW.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Util 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Util\RFC1751.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Util\__init__.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Util\number.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Util\randpool.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\Util\test.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\__init__.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\Crypto\test.py 
C:\Users\sridharr\AppData\Roaming\Python\Python26\site-packages\pycrypto-2.0.1-py2.6.egg-info 

PyPM można zainstalować instalując ActivePython.

+1

_error: Can ' t zainstaluj pycrypto-2.5: wymaga subskrypcji Business Edition subscription_ –

+1

@DavidFreitas - wypróbuj ActivePython 32-bit, a nie 64-bit. –

3

Dla innych ludzi, takich jak ja w 64-bitowym Windows 7:

wersja skrócona: Śledź this instrukcjami.

Długa wersja:

zainstalować VC++ 2008 SP1 Express. możesz go uzyskać od here.

Potrzebny jest również zestaw Windows SDK, w szczególności Win7 + Net 3.5 SDK.

Może issue został już rozwiązany w wersji Pythona, jeśli nie pobrać plik diff ze strony emisyjnej

pobierania patch.py (lub jakiegokolwiek innego narzędzia patch plików diff)

jeśli pobrać łatkę plik .py i histerezy w c:\Python27 wystarczy uruchomić:

python patch-11.01.py vcvars3.diff 

wreszcie zainstalować przy użyciu pip:

pip install pycrypto