Не удается установить Vowpalwabbit с помощью pip в Windows 10

У меня установлен Python 3.7.0 в Windows 10, и я не могу установить Vowpalwobbit. Когда я использую команду:

pip install vowpalwabbit

Я получил:

Building wheels for collected packages: vowpalwabbit
  Building wheel for vowpalwabbit (setup.py) ... error
  ERROR: Complete output from command 'c:\users\user\appdata\local\programs\python\python37-32\python.exe' -u -c 'import setuptools, tokenize;__file__='"'"'C:\\Users\\User\\AppData\\Local\\Temp\\pip-install-0tp3npd1\\vowpalwabbit\\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\User\AppData\Local\Temp\pip-wheel-78e8xolx' --python-tag cp37:
  ERROR: running bdist_wheel
  ...
    File "C:\Users\User\AppData\Local\Temp\pip-install-0tp3npd1\vowpalwabbit\setup.py", line 115, in build_extension
      raise Exception('Pre-built vw/python library for Windows is not supported for this python version')
  Exception: Pre-built vw/python library for Windows is not supported for this python version

Я пытался использовать Python 3.5.0, и это все равно не сработало.

В вашем сообщении об ошибке говорится, что Windows не поддерживается, и на странице PyPI пакета нет никаких указаний об обратном.

BoarGules 25.05.2019 19:00

@phd у меня есть ошибки i.imgur.com/psO7Ij2.png

ArcheR 25.05.2019 20:54
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
3
310
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я вставлю сюда ответ, который я дал по этому вопросу:

Пакет Python включает в себя C++, который необходимо собрать из исходного кода, и это несколько усложняется, поскольку также должны присутствовать зависимости. Мы работаем над улучшением процесса установки Python, а пока вот как мне удалось заставить вашу ситуацию работать в Windows 10 1809 с последней версии vw master. (Вещи немного изменились с 8.5.0, что находится на пипсе)

  • Для Python3.7 я использовал Boost 1.70 (это последняя версия на vcpkg)
  • Я использовал CMake 3.13, и он смог разрешить зависимости Boost 1.70.

    1. Установить vcpkg
    2. Установите зависимости с помощью vcpkg

    vcpkg install zlib:x64-windows
    vcpkg install boost-system:x64-windows
    vcpkg install boost-program-options:x64-windows
    vcpkg install boost-test:x64-windows
    vcpkg install boost-align:x64-windows
    vcpkg install boost-foreach:x64-windows
    vcpkg install boost-python:x64-windows
    vcpkg install boost-math:x64-windows
    vcpkg install boost-thread:x64-windows
    
    1. cd <repo_root>/python
    2. python setup.py --vcpkg-root C:\path\to\vcpkg install
      • Где C:\path\to\vcpkg — это корневой каталог, в который вы клонировали vcpkg.

Другие вопросы по теме