vcvarsall.bat nécessaire à python pour compiler absent de visual studio 2015 (v 14)

j'essaie d'installer numpy en python 3.5 sous windows 10 avec visual studio 2015 ultimate installé.

version Courte: le fichier vcvarsall.bat est absente de vs14 dossier C:Program Files (x86)Microsoft Visual Studio 14.0VC le dossier. Pourquoi?

version longue: Exécuter pip install numpy me donne cette erreur error: Unable to find vcvarsall.bat

la recherche de cette erreur m'a amené à plusieurs réponses stackoverflow qui m'ont aidé à comprendre que python a besoin du compilateur c++ pour compiler certains des paquets. Et il doit le faire en utilisant la même version de compilateur qui a été utilisé pour compiler python 3.5 ( erreur: Impossible de trouver vcvarsall.chauve-souris ). Mon python est compilé en utilisant [MSC v. 1900 64 bit (AMD64)] - qui est vs 14 (visual studio 2015 )

aller plus loin avec ma recherche, j'ai appris de: pip install donne erreur: Impossible de trouver vcvarsall.chauve-souris get_build_version() à partir de $python_install_prefix/Lib/distutils/msvc9compiler.py renvoie l' version de vs qui devrait être utilisé pour trouver le chemin de vcvarsall.bat Pour moi, cette méthode renvoie 14. Donc tout corriger.

maintenant quand je regarde dans le dossier C:Program Files (x86)Microsoft Visual Studio 14.0VC il fichier vcvarsall.chauve-souris est manquant.

mais quand je regarde dans le dossier C:Program Files (x86)Microsoft Visual Studio 12.0VC il y a un vcvarsall.chauve.

pourquoi vcvarsall.bat manquant dans vs 14.0 ??

51
demandé sur New contributor 2015-10-24 23:46:18

6 réponses

assurez-vous que les outils courants C++ sont installés dans Visual Studio.

programmes et fonctions - > VS 2015 - > changement

VS2015 setup

90
répondu Bohdan 2017-01-31 15:58:49

j'ai déjà rencontré ce problème lors de l'installation de numpy. Bien que je n'ai pas pu réparer le vcvarsall.problème de bat', j'ai trouvé que je pouvais télécharger des bibliothèques pré compilées d'ici: http://www.lfd.uci.edu / ~gohlke / pythonlibs / Téléchargez les bibliothèques que vous voulez, naviguez à l'endroit où le Téléchargé .les fichiers whl sont et ouvrent une fenêtre d'invite de commande. exécuter ' pip install [nom du fichier whl]' Cela installera la bibliothèque pour vous sans problème de compilation.

5
répondu R21 2016-01-24 19:01:04

j'ai téléchargé les outils de construction Visual C++ de Microsoft lien ici et tout a bien fonctionné.

2
répondu Bhanuday Birla 2017-01-06 11:51:07

j'ai rencontré ce problème lorsque j'ai essayé de construire un paquet ujson avec python 2.7 (compilé avec VS 2015).

  • vcvarsall.bat: essayez de copier vsvars32.bat (du même répertoire - "c:\Program fichiers (x86)\Microsoft Visual Studio 14.0\Common7\Tools") à vcvarsall.chauve. C'est tout ce dont vous avez besoin pour construire
  • un autre problème est de détecter VS version dans la fonction get_build_version () (distutils/msvc9compiler.py). Vous devez changer cette fonction pour retourner la version droite de VS.

il y a cette ligne:

majorVersion = int(s[:-2]) - 6

fixe majorVersion à 13, mais la version correcte pour VS 2015 est 14. Vous devez donc ajouter deux lignes, par exemple:

if majorVersion == 13:
    majorVersion = 14 
1
répondu Petr Peňás 2016-07-08 14:26:09

je viens d'avoir le même problème (Windows 7, Python 3.4, pip 7.1)

pip install mysqlclient
(...)
error: Unable to find vcvarsall.bat

j'ai suivi ces instructions: https://www.linkedin.com/pulse/resolving-python-error-unable-find-vcvarsallbat-bhanu-pratap-singh /

a ensuite augmenté la valeur de pip à 9.0.1 avec

python -m pip install --upgrade pip

essayé à nouveau:

pip install mysqlclient

et voilà:

Successfully installed mysqlclient-1.3.12
0
répondu azathoth 2017-12-24 18:28:03

lors de l'installation de Python 2.7 module si vous faites face à l'erreur:

error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall.bat)

Windows OS Solution

la solution la plus facile serait de:

  • Parcourir URL http://aka.ms/vcpython27
  • Télécharger Compilateur Microsoft Visual C++ pour Python 2.7
  • Snapshot:

vcpython27

  • Version: 9.0.0.30729
  • Nom De Fichier : VCForPython27.MSI
  • Date De Publication : 9/29/2014
  • Taille du fichier: 83.8 MB
  • détails:

    • ce paquet contient le compilateur et l'ensemble des en-têtes de système nécessaire pour produire des roues binaires pour les paquets Python. Une roue binaire D'un paquet Python peut alors être installée sur N'importe quel système Windows sans avoir besoin d'accéder à un compilateur C.

    • le message d'erreur typique que vous recevrez si vous avez besoin de ce paquet de compilateur est incapable de trouver vcvarsall.MTD

    • ce message apparaît parce que le Le paquet Python en cours d'installation contient le code source d'un module d'extension natif (.pyd), mais n'a pas de copie pré-construite du module. Les paquets Python surlignés à pythonwheels.com ont déjà été mis à jour par leurs développeurs pour inclure des binaires pré-construits, mais beaucoup sont encore disponibles uniquement comme code source.

    • ce paquet de compilateur est entièrement non supporté et représente un instantané du dernier version entièrement compatible avec Python 2.7. Pour les dernières corrections de sécurité et de bug, veuillez utiliser la dernière version de Microsoft Visual Studio pour tout travail de développement qui ne s'interface pas directement avec Python 2.7.

  • Exigences Relatives Aux Systèmes:
    • Système D'Exploitation Supporté: Windows 7, Windows 8, Windows 8.1
    • Microsoft Visual C++ 2008 SP1 redistribuable Paquet (x86, x64) Windows 8 et suivantes nécessitent le Microsoft. NET Framework 3.5. Voir ici pour des instructions d'installation.
    • Espace Disque requis : l'Installation nécessite 380 mégaoctets (MO) d'espace disque dur.
    • Paquets Python setuptools 6.0 ou plus est requis pour que Python détecte automatiquement ce paquet de compilateur. la roue est recommandé pour produire des binaires pré-compilés.
  • Instructions D'Installation:
    • L'installation et la désinstallation du paquet compilateur se fera par défaut à l'installation juste pour l'utilisateur courant et ne nécessite pas de privilèges administratifs. Pour installer pour tous les utilisateurs d'une machine, exécutez msiexec /i ALLUSERS=1 à partir d'une invite de commande surélevée.
    • utilisant des outils de distribution Python Les développeurs de paquets Python devraient télécharger et utiliser ce compilateur pour produire des roues binaires pour leurs paquets Python à télécharger vers PyPI. Installer le paquet de roues, mettre à jour vers setuptools 6.0 ou plus tard, et ajouter setup.py le téléchargement de bdist_wheel dans votre processus de compilation produira les bons fichiers (n'oubliez pas de le faire pour les versions 32 bits et 64 bits).
    • si un paquet Python que vous installez n'a pas de roue, vous pouvez installer ce paquet de compilateur sur votre propre machine. Une fois que le compilateur est installé et que vous avez mis à jour vers setuptools 6.0 ou plus tard, vous pouvez utiliser pip install pour construire et installer le paquet Python. Si vous gérez plusieurs machines et que vous devez installer le paquet Python sur chacune d'elles, vous devez installer le paquet wheel et utiliser pip wheel pour produire une roue qui peut être installée sur les machines sans nécessiter ce paquet.
  • installez le paquet sur votre serveur local.
  • installez le Python 2.7 module avec succès sans aucune erreur.
0
répondu New contributor 2018-09-12 12:05:56