web-dev-qa-db-fra.com

python pip sous Windows - Echec de la commande 'cl.exe'

J'essaie d'installer spaCy en utilisant pip install spacy, mais l'erreur suivante s'affiche.

 enter image description here

J'ai installé VS 2015 et l'installation Python suivante est installée.

3.5.2 |Anaconda 2.5.0 (64-bit)| (default, Jul 5 2016, 11:41:13) [MSC v.1900 64 bit (AMD64)]

J'ai essayé les solutions SO suivantes en vain.

Ainsi que divers autres. Ce n'est pas un problème unique à cette bibliothèque spécifique, mais plus généralement à chaque fois que j'essaie d'installer des bibliothèques Python qui ont besoin de C pour compiler sur Windows.

25
ashishsingal

Vous aurez peut-être besoin d'avoir cl.exe dans votre PATH.

PATH est une variable d'environnement qui indique à Windows où trouver les fichiers exécutables lorsque vous lui donnez simplement le nom. Par défaut, il contient des emplacements tels que C:\Windows.

Installez d’abord Visual C++ Build Tools à partir du programme d’installation de Visual Studio s’il n’est pas déjà installé. Ensuite, effectuez l’une des opérations suivantes:

  1. Utilisez l'invite de commandes Visual C++. Vous pouvez le trouver dans le menu Démarrer sous le dossier Visual Studio. Ceci configure automatiquement PATH.
  2. Ajoutez le dossier cl.exe à la PATH manuellement.

    Le dossier que vous recherchez est généralement (visual studio folder)\VC\bin. Les instructions peuvent être trouvées dans cette réponse . Après cela, vous pouvez utiliser cl.exe à partir de n'importe quelle invite de commande. Notez que vous devez redémarrer l'invite de commande après cette opération pour pouvoir mettre à jour la PATH qu'il contient.

30
Pietu1998

C'est facilement la solution la plus simple ... Pour ceux qui ne savent pas comment faire cela:

  1. Installez le compilateur C++ http://landinghub.visualstudio.com/visual-cpp-build-tools

  2. Allez dans le dossier d'installation (dans mon cas, c'est le cas): C:\Program Files (x86)\Outils de compilation Microsoft Visual C++

  3. Ouvrez Visual C++ 2015 x86 x64 Invite de commandes des outils de génération croisée

  4. Type: pip install package_name

15
Kunal Mathur

Dans mon cas, je dois installer plus d'outils à partir de Visual Studio (j'utilise VS 2017 Community et Python 3.6.4). J'ai installé ces outils (voir capture d'écran du programme d'installation ici ):

  1. Développement de bureau avec C++: J'ai inclus tous les éléments par défaut et les suivants:

    • Prise en charge de Windows XP pour C++
    • Prise en charge de C++/CLI
    • Jeu d'outils VC++ 2015.3 v140 
  2. Développement sous Linux avec C++

Ensuite, j'ai ouvert le fichier Windows PowerShell en tant que privilèges d'administrateur (clic droit pour l'ouvrir), puis j'ai déplacé le dossier d'installation de Visual Studio et trouvé ce chemin:

cd [Visual Studio Path]\VC\Auxiliary\Build

Puis j'ai exécuté ce fichier: 

.\vcvars32.bat

Après cela, j'ai utilisé pip comme d'habitude, par exemple, je voulais installer Mayavi:

pip install mayavi

J'espère que ça aide aussi quelqu'un.

Je faisais face au même problème avec Visual Studio 2017.

vous pouvez trouver cl.exe dans C:\Programmes (x86)\Microsoft Visual Studio\2017\Communauté\VC\Tools\MSVC\14.16.27023\bin\Hostx86\x86.

il suffit de définir la variable d'environnement comme adresse capable et d'exécuter la commande dans anaconda, cela a fonctionné pour moi.

1
DIPENDRA YADAV

Reportez-vous à ce lien:

https://www.lfd.uci.edu/~gohlke/pythonlibs/#cytoolz

Téléchargez le bon paquet pour votre version de python (si vous avez du mal à savoir quelle version de python vous avez, il vous suffit de lancer l'interprète)

utilisez pip pour installer le paquet, en supposant que le fichier se trouve dans le dossier downloads et que vous avez python 3.6 32 bits:

python -m pip install C:\Users \% USER%\Téléchargements\cytoolz ‑ 0.9.0.1 ‑ cp36 ‑ cp36m ‑ win32.whl

ce n'est pas valable uniquement pour ce paquet, mais pour tout paquet qui ne peut pas compiler sous votre propre installation Windows.

1
SEDaradji

Je viens d’ajouter à la réponse de Kunal Mathur et à celle de @mockash, car je ne peux pas en dire davantage par manque de réputation. 

Avant de taper: pip install nom_package, vous devez changer le répertoire dans le dossier où se trouve pip.exe. par exemple:

Ouvrez Visual C++ 2015 x86 x64 Invite de commandes des outils de génération croisée -> changer de répertoire cd C:\Utilisateurs\Test\AppData\Local\Programmes\Python\Python36-32\Scripts -> Type: pip install nom_package

Mais la chose étrange est que je ne peux installer avec succès que par 'Visual C++ 2015 x64 x86' not 'x86 x64'

1
Yufang

J'avais rencontré ce problème plusieurs fois. Il y a cl.exe mais pour une raison étrange, pip n'a pas pu le trouver, même si nous exécutons la commande à partir du dossier bincl.exe est présent. Essayez d’utiliser conda installer, cela a bien fonctionné pour moi.

Comme vous pouvez le voir dans l'image suivante, pip n'est pas en mesure de trouver le cl.exe. Ensuite, j'ai essayé d'installer avec conda 

 image 1

Et à ma grande surprise, il s’installe sans erreur une fois que vous avez installé la bonne version de vs cpp build tools, c’est-à-dire la v14.0, dans le bon répertoire.

 image 2

0
Vipin
  1. Installez l'outil de génération Microsoft visual c ++ 14.0. (Windows 7)
  2. créer un environnement virtuel en utilisant conda.
  3. Activez l'environnement et utilisez conda pour installer le package nécessaire.

Par exemple: Conda install -c conda-forge spacy

0
Harini