2012-12-09 7 views
15

Ich versuche PyCrypto 2.6 Library auf meinem Computer zu installieren. Aber ich bekomme immer den Fehler folgendePyCrypto installieren Fehler unter Windows

D:\Software\Python\package\pycrypto-2.6>python setup.py build 
running build 
running build_py 
running build_ext 
warning: GMP or MPIR library not found; Not building Crypto.PublicKey._fastmath. 

building 'Crypto.Random.OSRNG.winrandom' extension 
error: Unable to find vcvarsall.bat 

My System hat Windows 8 Pro 64-Bit-Visual Studio Enterprise 2012 und Python 3.3

Um den Fehler zu beheben, habe ich versucht, die Umgebungsvariable VS90COMNTOOLS=%VS110COMNTOOLS% zu setzen, wie empfohlen von fmuecke in the post error: Unable to find vcvarsall.bat, aber es hat nicht für mich funktioniert.

Kann mir bitte jemand sagen, wie man diesen Fehler beheben kann.

FYI, ich habe nicht VC2008 usw. zu installieren ..

+0

Python 3.3 ist mit VC2010 gebaut. Eine allgemeine Regel besagt, dass Erweiterungen mit derselben für Python verwendeten VC erstellt werden müssen. Ich schlage vor, Sie installieren VC2010, versuchen Sie es und aktualisieren Sie die Frage entsprechend. – SquareRootOfTwentyThree

+0

Ich habe bereits in meiner Frage erwähnt, dass die Installation einer anderen Instanz von Visual Studio/VC für mich keine Option ist. –

+0

Das funktionierte für mich https://stackoverflow.com/a/41843310/2968001 –

Antwort

13

ich es geschafft PyCrypto 2.6 unter Verwendung des prebuilt binary for Python3.3 von The Voidspace Python Modules zu installieren.

Es ist nicht die error: Unable to find vcvarsall.bat für andere Pakete, die keine vorgefertigten Binärdateien zur Verfügung haben.

Allerdings beseitigt es die Notwendigkeit, PyCrypto-Paket zu bauen, so dass ich PyCrypto auf meinem System installieren kann, ohne den Fehler zu bekommen.

+0

Fantastisch. Vielen Dank! – wujj123456

+1

Ich habe dies mit 'easy_install pycrypto-2.6.win32-py3.3.exe 'gemacht, aber wenn ich versuche,' von Crypto.PublicKey Import RSA' bekomme ich: 'from.import winrandom ImportError: Laden der DLL fehlgeschlagen: Das angegebene Modul konnte nicht gefunden werden. – deed02392

1

können Sie mingw64 installieren und dann aus dem PyCrypto entpackten Dateien Verzeichnis ausführen:

Python setup.py bauen --compiler = mingw32

4

Ich weiß, dass dies eine alte Frage, aber ich brauche auch heute viel Zeit, um Paramiko zu bekommen. Ich möchte Python 3.4 verwenden und auf Voidspace, gibt es keine Prebuild-Binärdateien für 3.4.

Schließlich bekam ich einen Wokring PyCrypto von "Microsoft Studio Express 2010 C++" und laufen aus dem PyCrypto 2.7 Ordner installieren:

python setup.py build --compiler msvc 
python setup.py install 
python setup.py bdist_wininst 

Alle "Tricks" mit Umgebungsvariablen nicht für mich arbeiten.

Wenn es jemand hilft, alles Dank geht an: http://flintux.wordpress.com/2014/04/30/pycrypto-for-python-3-4-on-windows-7-64bit/

+0

Dies ist die echte Antwort, die ausgewählte ist eine Arbeit um. –

+0

Nur zur Erinnerung: Es funktioniert nicht in Python 3.5.1 –

2

ich nur

https://www.microsoft.com/en-gb/download/details.aspx?id=44266

mit Setuptools> 6.0 und laufen

'PyCrypto installieren pip' verwendet haben

und es funktionierte

+1

Link-Only-Antworten sind nicht besonders hilfreich, wenn der Link tot wird - wenn Sie annehmen, der Link ist tot, was kann ich noch aus Ihrer Antwort bekommen? Alles, was ich weiß, ist, dass ich zuerst etwas herunterladen muss, bevor ich mit den restlichen Anweisungen fortfahre. – stwalkerster

+0

Als eine Anmerkung, der Download ist für "Microsoft Visual C++ Compiler für Python 2.7", und dies löste das Problem für mich. (Visual Studio 2015 Community Edition nicht) – user

2

Für Python 3.5 Sie können dies tun:

eine PyCrypto binäre von dieser Seite installieren: https://github.com/sfbahr/PyCrypto-Wheels

Der beste Weg, es zu tun, ist:

64bits Python

c: \ Python35 \ Scripts \ pip.exe installieren --use-wheel --no-index --find-links = https://github.com/sfbahr/PyCrypto-Wheels/raw/master/pycrypto-2.6.1-cp35-none-win_amd64.whl pycrypto

32bits Python

c: \ Python35 \ Scripts \ pip.exe installieren --use-Rad --no-Index --find-links = https://github.com/sfbahr/PyCrypto-Wheels/raw/master/pycrypto-2.6.1-cp35-none-win32.whl PyCrypto

Natürlich ersetzen c: \ Python35 \ Scripts \ pip.exe von Ihrem Python pip Pfad

Um Ihre Python-Version, führte Python zu kennen und in der Architektur zwischen Klammern dargestellt aussehen:

C: \ Users \ utilisateur> Python Python 3.5.1 | Anaconda 4.0.0 (64-Bit) | (Standard, 16. Februar 2016, 09:49:46) [MSC v.1900 64 bit (AMD64)] auf win32 Geben Sie "Hilfe", "Copyright", "Kredite" oder "Lizenz" für weitere Informationen .

Hoffe, das kann helfen.

0

wenn Sie VS 2010

SET VS90COMNTOOLS =% VS100COMNTOOLS%

VS 2012

SET VS90COMNTOOLS =% VS110COMNTOOLS%

VS 2013

SET VS90COMNTOOLS =% VS120COMNTOOLS%

und dann python setup.py installieren