python pip op Windows – opdracht ‘cl.exe’ is mislukt

Ik probeer spaCy te installeren met behulp van pip install spacymaar ik krijg de volgende foutmelding ..

Ik heb VS 2015 geïnstalleerd en ik heb de volgende Python-installatie ..

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

Ik heb de volgende SO-oplossingen geprobeerd zonder resultaat ..

Zoals diverse anderen. Dit is geen uniek probleem voor deze specifieke bibliotheek, maar meer in het algemeen wanneer ik Python-bibliotheken probeer te installeren die C nodig hebben om op Windows te bouwen.


Antwoord 1, autoriteit 100%

U installeert een pakket met onderdelen geschreven in C/C++, dus u moet cl.exe(de Microsoft C Compiler) op uw computer en in uw PATH. PATHis een omgevingsvariabele die Windows vertelt waar uitvoerbare bestanden te vinden zijn.

Zorg er eerst voor dat de C++ build-toolsvoor Visual Studio zijn geïnstalleerd.

  • Als je Visual Studio al op je computer hebt, installeer dan Desktop development with C++vanuit de Visual Studio Installer, die je in het Startmenu zou moeten hebben.
  • Anders kunt u Build-tools voor visuele studio afzonderlijk downloaden van de visuele studio Downloadpagina (aan de onderkant van de pagina), kies vervolgens C++ Build Tools van het installatieprogramma.

Gebruik vervolgens, in plaats van de normale opdrachtprompt of PowerShell, gebruik een van de speciale opdracht-aanwijzingen in de map Visual Studio in Start Menu . Hiermee wordt het PATHautomatisch ingeschakeld, zodat cl.exekan worden gevonden.

  • Voor 32-bits Python, gebruik X86 Native Tools Command Prompt .
  • Gebruik voor 64-bits Python X64 Native Tools-opdrachtprompt .

Antwoord 2, Autoriteit 40%

Dit is gemakkelijk de eenvoudigste oplossing.
Voor degenen die niet weten hoe dit te doen:

  1. Installeer de C++ -compiler
    https://visualstudio.microsoft.com/downloads/#build -Tools-for-visual-studio-2019

  2. Ga naar de map Installatie (in mijn geval is het):
    C: \ Program Files (X86) \ Microsoft Visual C++ Build-tools

  3. Open Visual C++ 2015 X86 X64 Cross Build Tools Command Prompt

  4. Type: pip install package_name


Antwoord 3, Autoriteit 21%

In mijn geval moet ik meer hulpmiddelen uit Visual Studio installeren (ik gebruik VS 2017 Community en Python 3.6.4). Ik heb die hulpmiddelen geïnstalleerd (zie Installateur screenshot hier ):

  1. Desktop Development met C++: Ik heb alle ineengestelde items en de volgende opgenomen:

    • Windows XP-ondersteuning voor C++
    • Ondersteuning voor C++ / CLI
    • VC++ 2015.3 V140 Toolset
  2. Linux-ontwikkeling met C++

Dan opende ik de Windows Powershell AS Administrator-rechten (klik met de rechtermuisknop om te openen) en verplaats de map van Visual Studio-installatie en vind dat pad:

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

Dan heb ik dit bestand uitgevoerd:

.\vcvars32.bat

Daarna gebruik ik PIP als normaal, ik wilde bijvoorbeeld Mayavi installeren:

pip install mayavi

Ik hoop dat het ook iemand helpt.


Antwoord 4, Autoriteit 9%

Raadpleeg deze link:

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

Download het juiste WHL-pakket voor u Python-versie (als u problemen ondervindt weten welke versie van Python u heeft, lunch dan de tolk)

Gebruik PIP om het pakket te installeren, ervan uitgaande dat het bestand in downloadmap is en u Python 3,6 32 bit hebt:

Python -m PIP-installatie C: \ gebruikers \% gebruiker% \ downloads \ cytoolz-0.9.0.1-CP36-CP36M-WIN32.WHL

Dit is niet geldig voor alleen dit pakket, maar voor elk pakket dat niet kan compileren onder uw eigen Windows-installatie.


Antwoord 5, Autoriteit 7%

Net toegevoegd aan het antwoord van Kunal Mathur en een antwoord op @mockash, omdat ik niet kan reageren vanwege een gebrek aan reputatie.

Voordat u typt: PIP Install Package_Name, moet u de map wijzigen in de map waarin Pip.exe is. Bijvoorbeeld:

Open Visual C++ 2015 X86 X64 Cross Build Tools Command Prompt – & GT;
Directory CD wijzigen
C:\Users\Test\AppData\Local\Programs\Python\Python36-32\Scripts–>Type:
pip install pakketnaam

Maar het rare is dat ik alleen succesvol kan installeren via 'Visual C++ 2015 x64 x86' not 'x86 x64'


Antwoord 6, autoriteit 5%

Ik had hetzelfde probleem met Visual Studio 2017.

u kunt cl.exe vinden in
C:\Program Files(x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\Hostx86\x86.

stel gewoon de omgevingsvariabele in als het bekwame adres en voer het commando uit in anaconda, het werkte voor mij.


Antwoord 7, autoriteit 2%

Ik ben dit probleem vaak tegengekomen. Er is cl.exemaar om de een of andere vreemde reden kon piphet niet vinden, zelfs niet als we het commando uitvoeren vanuit de map binwaar cl.exeis aanwezig. Probeer het conda-installatieprogramma te gebruiken, het werkte prima voor mij.

Zoals je kunt zien in de volgende afbeelding, kan pipde cl.exeniet vinden. Toen probeerde ik het te installeren met conda

En tot mijn verbazing wordt het zonder fouten geïnstalleerd zodra je de juiste versie van vs cpp build-tools hebt geïnstalleerd, d.w.z. v14.0 in de juiste map.


Antwoord 8, autoriteit 2%

  1. Installeer Microsoft visual c++ 14.0 build tool.(Windows 7)
  2. maak een virtuele omgeving met conda.
  3. Activeer de omgeving en gebruik conda om het benodigde pakket te installeren.

Bijvoorbeeld:
conda install -c conda-forge spacy


Antwoord 9, autoriteit 2%

Als je het heel gemakkelijk en leuk wilt om te automatiseren, ga dan naar Chocolatey.org/install en je kunt deze commando’s in principe kopiëren en plakken en aanpassen aan de versies van VC++ die je nodig hebt.

Deze opdracht is afkomstig van https://chocolatey.org/install

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

Zodra je chocolatey hebt geïnstalleerd, kun je je Powershell-terminal sluiten en opnieuw openen of deze opdracht uitvoeren:

Import-Module "$env:ChocolateyInstall\helpers\chocolateyInstaller.psm1" ; Update-SessionEnvironment

Je kunt nu Chocolatey gebruiken om Python te installeren (de nieuwste versie van 3.x is standaard).

choco install python
# This next command installs the latest VisualStudio installer that lets you get specific versions of the build
# Microsoft has replaced the 2015 and 2017 installer links with this one, and we can still use it to install the 2015 and 2017 components
choco install visualstudio2019buildtools --package-parameters "--add Microsoft.VisualStudio.Component.VC.140 --passive --locale en-US --add Microsoft.VisualStudio.Component.Windows10SDK.$($PSVersionTable.BuildVersion.Build) --no-includeRecommended" -y --timeout 0
# Usually need the "unlimited" timeout aka "0" because Visual Studio Installer takes forever
# Tool portion
# Microsoft.VisualStudio.Product.BuildTools
# Component portion(s)
# Microsoft.VisualStudio.Component.VC.140
# Win10SDK needs to match your current Win10 build version
# $($PSVersionTable.BuildVersion.Build)
# Microsoft.VisualStudio.Component.Windows10SDK.$($PSVersionTable.BuildVersion.Build)
# Because VS2019 Build Tools are dumb, need to manually link a couple files between the SDK and the VC++ dirs
# You may need to tweak the version here, but it has been updated to be as dynamic as possible 
# Use an elevated Powershell or elevated cmd prompt (if using cmd.exe just use the bits after /c)
cmd /c mklink "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\rc.exe" "C:\Program Files (x86)\Windows Kits\10\bin\$($PSVersionTable.BuildVersion.Major).$($PSVersionTable.BuildVersion.Minor).$($PSVersionTable.BuildVersion.Build).0\x64\rc.exe"
cmd /c mklink "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\rcdll.dll" "C:\Program Files (x86)\Windows Kits\10\bin\$($PSVersionTable.BuildVersion.Major).$($PSVersionTable.BuildVersion.Minor).$($PSVersionTable.BuildVersion.Build).0\x64\rcdll.dll"

Zodra je dit hebt geïnstalleerd, moet je opnieuw opstarten. Ik heb af en toe dingen laten werken zonder opnieuw op te starten, maar je pip install-opdrachten werken het beste als je eerst opnieuw opstart.

Nu kun je pip install pipenvof pip install complex-packageen zou goed moeten zijn om te gaan.

Other episodes