Installing spacy on a new Windows 7 virtual machine, and running into trouble (per usual). The appropriate way to do this is to usually to install Build Tools, but it always seems quicker to grab the necessary wheels from Christoph Gohlke’s website: https://www.lfd.uci.edu/~gohlke/pythonlibs/. Selecting the appropriate set under spacy along with cytoolz and sometimes ujson. Then,
- Create my virtual environment:
python -m venv .venv - Activate it:
.venv\scripts\activate - Install the wheels with pip:
pip install cymem-2.0.3-cp38-cp38m-win_amd64.whl ...

Okay, always good first thing to try is update pip: python -m pip install pip --upgrade, and the error continues.
Hmm…maybe I downloaded the wrong version — what platform am I on?
> python -c "import plaform; print(platform.architecture())"
('64bit', 'WindowsPE')
> python --version
Python 3.8.3
I’m not familiar with ‘WindowsPE’, apparently the Windows Preinstallation Environment. Anyway, something is not being correctly recognized, but I’m pretty sure I have the correct wheel file.
The platform information is read directly from the name, so I can rename, e.g., my cymem wheel cymem-2.0.3-cp38-none-any.whl. Since I have the correct versions, this works.
The none sets the wheel to pure Python and the any stipulates that it will work on any CPU architecture. (Obviously, it won’t necessarily run in a different environment: x86 or Linux, but pip now ignores whatever check it was running before.)
Now, spacy is installed, so back to work.