web-dev-qa-db-fra.com

Échec de la construction de la roue pour Spacy

J'essaie d'installer spacy en exécutant pip install spacy pour la version python 3.6.1 , mais je reçois continuellement des erreurs comme ci-dessous. Comment se débarrasser de ce problème? Auparavant, j’avais une erreur cl.exe non trouvée, après que j’ai ajouté le chemin Visual Studio dans les variables d’environnement où cl.exe existe.

     Failed building wheel for spacy
  Running setup.py clean for spacy
  Running setup.py bdist_wheel for murmurhash ... error
  Complete output from command c:\users\sh00428701\appdata\local\programs\python\python36\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\SH0042~1\\AppData\\Local\\Temp\\pip-build-joi6voav\\murmurhash\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d C:\Users\SH0042~1\AppData\Local\Temp\tmpa6tzdkovpip-wheel- --python-tag cp36:
  running bdist_wheel
  running build
  running build_py
----------------------------------------
  Failed building wheel for murmurhash
  Running setup.py clean for murmurhash
  Running setup.py bdist_wheel for cymem ... error
  Complete output from command c:\users\sh00428701\appdata\local\programs\python\python36\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\SH0042~1\\AppData\\Local\\Temp\\pip-build-joi6voav\\cymem\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d C:\Users\SH0042~1\AppData\Local\Temp\tmpz7p6hkiwpip-wheel- --python-tag cp36:

 ----------------------------------------
  Failed building wheel for cymem
  Running setup.py clean for cymem
  Running setup.py bdist_wheel for preshed ... error
  Complete output from command c:\users\sh00428701\appdata\local\programs\python\python36\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\SH0042~1\\AppData\\Local\\Temp\\pip-build-joi6voav\\preshed\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d C:\Users\SH0042~1\AppData\Local\Temp\tmpwppgmyp9pip-wheel- --python-tag cp36:

  ----------------------------------------
  Failed building wheel for preshed
  Running setup.py clean for preshed
  Running setup.py bdist_wheel for thinc ... error
 ----------------------------------------
  Failed building wheel for thinc
  Running setup.py clean for thinc
  Running setup.py bdist_wheel for ujson ... error
  ----------------------------------------
  Failed building wheel for ujson
  Running setup.py clean for ujson
  Running setup.py bdist_wheel for cytoolz ... error
  ----------------------------------------
  Failed building wheel for cytoolz
  Running setup.py clean for cytoolz
Failed to build spacy murmurhash cymem preshed thinc ujson cytoolz
Installing collected packages: murmurhash, cymem, preshed, wrapt, tqdm, toolz, cytoolz, plac, pyreadline, dill, termcolor, pathlib, thinc, ujson, regex, spacy
  Running setup.py install for murmurhash ... error

   C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Ic:\users\sh00428701\appdata\local\programs\python\python36\include -IC:\Users\SH0042~1\AppData\Local\Temp\pip-build-joi6voav\murmurhash\murmurhash\include -Ic:\users\sh00428701\appdata\local\programs\python\python36\include -Ic:\users\sh00428701\appdata\local\programs\python\python36\include /EHsc /Tpmurmurhash/mrmr.cpp /Fobuild\temp.win-AMD64-3.6\Release\murmurhash/mrmr.obj /Ox /EHsc
    mrmr.cpp
    c1xx: fatal error C1083: Cannot open source file: 'murmurhash/mrmr.cpp': No such file or directory
    error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\bin\\cl.exe' failed with exit status 2

    ----------------------------------------
Command "c:\users\sh00428701\appdata\local\programs\python\python36\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\SH0042~1\\AppData\\Local\\Temp\\pip-build-joi6voav\\murmurhash\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\SH0042~1\AppData\Local\Temp\pip-_j1cxej1-record\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\Users\SH0042~1\AppData\Local\Temp\pip-build-joi6voav\murmurhash\
13
Sachin Prasad

Quelques réflexions:

  • Prenez les différents fichiers de roue dont vous avez besoin depuis http://www.lfd.uci.edu/~gohlke/pythonlibs/#spacy et installez-les avec pip install x.whl y.whl etc.
  • Mettez à niveau votre version de cpp build tools jusqu'en 2017 et essayez à nouveau pip
16
David C

pour moi, pip install --no-cache-dir spacy a travaillé

19
naoko

J'ai installé ces paquets, alors ça marche: 

Sudo apt-get install python-dev 
Sudo apt-get install python3-dev 
Sudo apt-get install libevent-dev
11
Ngu Quang Truong

Cela a fonctionné pour moi: 

# Note, use Sudo. I'm in a docker image, so i dont need it.

# install dev libs
apt-get install python-dev -y && \
apt-get install python3-dev -y && \
apt-get install libevent-dev -y && \

# install new gcc
apt-get update && \
apt-get install build-essential software-properties-common -y && \
add-apt-repository ppa:ubuntu-toolchain-r/test -y && \
apt-get update && \
apt-get install gcc-snapshot -y && \
apt-get update && \
apt-get install gcc-6 g++-6 -y && \
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 60 --slave /usr/bin/g++ g++ /usr/bin/g++-6 && \
apt-get install gcc-4.8 g++-4.8 -y && \
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.8;

voir https://Gist.github.com/application2000/73fd6f4bf1be6600a2cf9f56315a2d91

2
Taivas Gogoljuk

Téléchargez et installez à partir de la source Gihub. Voici le lien: https://github.com/explosion/spaCy

Utilisez ces commandes: 

python -m pip install -U pip venv              # update pip & virtualenv
git clone https://github.com/explosion/spaCy   # clone spaCy
cd spaCy                                       # navigate into directory

venv .env                                      # create environment in .env
source .env/bin/activate                       # activate virtual environment
export PYTHONPATH=`pwd`                        # set Python path to spaCy directory
pip install -r requirements.txt                # install all requirements
python setup.py build_ext --inplace            # compile spaCy

N'hésitez pas à n'utiliser que les deux dernières commandes si vous n'utilisez pas l'environnement virtuel. Suivez la documentation officielle ici

1
ellisa khoja

Si vous êtes sur Ubuntu, faites ceci

Sudo apt-get install build-essential python-dev git

Maintenant, installez spacy en 

pip install -U spacy
1
Apoorv Agarwal

Si vous l'utilisez avec python3.6 installé manuellement et tentez de l'installer dans un environnement 3.6, il se peut qu'il manque python3.6-dev

Sudo apt-get install python3.6-dev

aussi peut-être

Sudo apt-get install gcc

Ceci est une réponse à un cas particulier.

0
Abhishek Chauhan

conda install -c conda-forge spacy a travaillé pour moi. J'ai Windows 10 et Python 3.5.3 :: Anaconda custom (64-bit)

0
user2543622