Python 为 spacy 构建轮子失败
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/43370851/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Failed building wheel for spacy
提问by Sachin Prasad
I'm trying to install spacy by running pip install spacy
for python version 3.6.1but continuously i'm getting errors like below,how to get rid of this issue? previously i was having cl.exe not found error, after that i added visual studio path in environment variables where cl.exe exists.
我正在尝试通过运行pip install spacy
python 版本3.6.1来安装 spacy,但我不断收到如下错误,如何摆脱这个问题?以前我遇到 cl.exe not found 错误,之后我在 cl.exe 存在的环境变量中添加了 Visual Studio 路径。
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\
采纳答案by David C
A couple thoughts:
一些想法:
- Grab the various wheel files you need from http://www.lfd.uci.edu/~gohlke/pythonlibs/#spacyand install with
pip install x.whl y.whl etc.
- Upgrade your version of cpp build tools to 2017 and try pip again
- 从http://www.lfd.uci.edu/~gohlke/pythonlibs/#spacy 获取您需要的各种轮文件并安装
pip install x.whl y.whl etc.
- 将您的 cpp 构建工具版本升级到 2017 并再次尝试 pip
回答by naoko
for me, pip install --no-cache-dir spacy
worked
对我来说,pip install --no-cache-dir spacy
工作
回答by Ngu Quang Truong
I installed these packages, then it works:
我安装了这些软件包,然后它就可以工作了:
sudo apt-get install python-dev
sudo apt-get install python3-dev
sudo apt-get install libevent-dev
回答by Taivas Gogoljuk
This worked for me:
这对我有用:
# 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;
see https://gist.github.com/application2000/73fd6f4bf1be6600a2cf9f56315a2d91
见https://gist.github.com/application2000/73fd6f4bf1be6600a2cf9f56315a2d91
回答by Apoorv Agarwal
If you are on Ubuntu, just do this
如果您使用的是 Ubuntu,请执行以下操作
sudo apt-get install build-essential python-dev git
Now install spacy by
现在安装 spacy
pip install -U spacy
回答by ellisa khoja
Download and install from the Gihub source. Here is the link: https://github.com/explosion/spaCy
从 Gihub 源下载并安装。这是链接:https: //github.com/explosion/spaCy
Use these commands:
使用这些命令:
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
Feel free to use only last two commands if not using virtual environment. Follow the official Documentation here
如果不使用虚拟环境,请随意仅使用最后两个命令。按照此处的官方文档进行操作
回答by Abhishek Chauhan
If you are using it with manually installed python3.6 and trying to install in a 3.6 environment then you maybe missing python3.6-dev
如果您将它与手动安装的 python3.6 一起使用并尝试在 3.6 环境中安装,那么您可能缺少 python3.6-dev
sudo apt-get install python3.6-dev
also maybe
也可能
sudo apt-get install gcc
This is an answer to particular case.
这是对特定情况的回答。
回答by user2543622
conda install -c conda-forge spacy
worked for me. I have windows 10 and Python 3.5.3 :: Anaconda custom (64-bit)
conda install -c conda-forge spacy
为我工作。我有 Windows 10 和Python 3.5.3 :: Anaconda custom (64-bit)
回答by sudhir tataraju
yum -y groupinstall development
yum -y groupinstall 开发
WORKED FOR ME
为我工作
回答by Eli Bailey
Spacy requires 64-bit python.
Spacy 需要 64 位 python。
Uninstall 32-bit. Install 64-bit python.
卸载 32 位。安装 64 位 python。
Try spacy installation again.
再次尝试 spacy 安装。