J'ai eu ce problème en utilisant Python 3.4.1 sur Windows 7 x64 , et malheureusement les packages dont j'avais besoin n'avaient pas d'exe ou de roues que je pouvais utiliser. Ce système nécessite quelques «solutions de contournement», qui sont détaillées ci-dessous (et TLDR en bas ).
En utilisant les informations dans la réponse de Jaxrtech ci - dessus , j'ai déterminé que j'avais besoin de Visual Studio C ++ 2010 (sys.version return MSC v.1600), j'ai donc installé Visual C ++ 2010 Express à partir du lien dans sa réponse, qui est http://go.microsoft .com /? linkid = 9709949 . J'ai tout installé avec des mises à jour, mais comme vous pouvez le lire ci-dessous, c'était une erreur. Seule la version originale d'Express doit être installée pour le moment (aucune mise à jour).
vcvarsall.bat était maintenant présent, mais il y avait une nouvelle erreur lors de l' installation du package, query_vcvarsall raise ValueError(str(list(result.keys())))ValueError: [u'path']
. Il y a d'autres questions de stackoverflow avec cette erreur, telles que des erreurs lors de la construction / installation du module C pour Python 2.7
J'ai déterminé à partir de cette réponse que 2010 Express installe uniquement des compilateurs 32 bits. Pour obtenir des compilateurs 64 bits (et autres), vous devez installer le SDK Windows 7.1. Voir http://msdn.microsoft.com/en-us/windowsserver/bb980924.aspx
Cependant, cela ne serait pas installé pour moi et le programme d'installation a renvoyé l'erreur installation failed with return code 5100
. J'ai trouvé la solution sur le lien suivant: http://support.microsoft.com/kb/2717426 . En bref, si des versions plus récentes des redistribuables Microsoft Visual C ++ 2010 x86 et x64 sont installées, elles sont en conflit avec celles du programme d'installation du SDK et doivent d'abord être désinstallées.
Le SDK a ensuite été installé, mais j'ai remarqué que vcvars64.bat n'existait toujours pas C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin
, ni ses sous-dossiers. vcvarsall.bat exécute le fichier batch vcvars64, donc sans lui, le paquet python ne s'installerait toujours pas (j'ai oublié l'erreur qui a été affichée à ce moment).
J'ai ensuite trouvé quelques instructions ici: http://www.cryptohaze.com/wiki/index.php/Windows_7_Build_Setup#Download_VS_2010_and_Windows_SDK_7.1
Suite aux instructions, j'avais déjà installé Express et 7.1 SDK, donc installé SDK 7.1 SP1, et fait le correction du fichier d'en-tête manquant. J'ai ensuite créé manuellement vcvars64.bat avec le contenu CALL setenv /x64
. Je vais coller toutes ces instructions ici, pour qu'elles ne se perdent pas.
L'étape 1 consiste à télécharger Visual Studio Express 2010.
http://www.microsoft.com/visualstudio/en-us/products/2010-editions/express
est un bon point de départ. Téléchargez le programme d'installation et exécutez-le (vc_web.exe). Vous n'avez pas besoin du téléchargement supplémentaire SQL 2008.
Vous aurez également besoin du SDK Windows (actuellement 7.1) pour les compilateurs 64 bits - à moins que vous ne vouliez faire que des versions 32 bits, qui ne sont pas entièrement prises en charge ...
http://www.microsoft.com/en-us/download/details.aspx?id=8279 est un bon point de départ pour télécharger ceci - vous voudrez exécuter winsdk_web.exe une fois téléchargé!
L'installation par défaut ici est très bien.
Enfin, téléchargez et installez la mise à jour Windows SDK 7.1 SP1:
http://www.microsoft.com/en-us/download/details.aspx?id=4422
Et, pour corriger le fichier d'en-tête manquant, VS2010 SP1.
http://www.microsoft.com/downloads/en/confirmation.aspx?FamilyID=75568aa6-8107-475d-948a-ef22627e57a5
Et, bon sang, corrigez le fichier de commandes manquant pour VS2010 Express. Cela devient carrément absurde.
Dans C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ VC \ bin \ amd64, créez "vcvars64.bat" avec ce qui suit (vous devrez exécuter en tant qu'administrateur):
APPEL setenv / x64
Mon package python ne s'est toujours pas installé (je ne me souviens pas de l'erreur). J'ai ensuite trouvé quelques instructions (copiées ci-dessous) pour utiliser l'invite de commande spéciale SDK 7.1, voir: https://mail.python.org/pipermail/distutils-sig/2012-F February / 018300.html
Peu importe cette question. Quelqu'un ici a remarqué cet élément dans le menu: Démarrer-> Tous les programmes-> Microsoft Windows SDK v7.1 -> Invite de commandes Windows SDK 7.1
Cela exécute un travail par lots qui semble configurer un environnement de travail pour le compilateur. À partir de cette invite, vous pouvez taper "setup.py build" ou "setup.py install".
J'ai ouvert l'invite de commandes du SDK Windows 7.1 comme indiqué et l'ai utilisé pour exécuter easy_install sur le package python. Et enfin, le succès!
TLDR ;
- Installez Visual Studio Express 2010 (de préférence sans redistributables mis à jour ou serveur SQL).
- Installer le SDK Windows 7.1
- Installez la mise à jour du SDK 7.1 SP1 et le correctif du fichier d'en-tête VS2010 SP1 (cette étape peut ne pas être requise).
- Créer manuellement
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64\vcvars64.bat
avec du contenuCALL setenv /x64
- Démarrer-> Tous les programmes-> Microsoft Windows SDK v7.1 -> Windows SDK 7.1 Command Prompt pour ouvrir une invite de commande spéciale x64, qui peut ensuite être utilisée avec python / easy_install / pip / etc (y compris ceux de virtual_envs).