Установка pyside с использованием PIP - nmake не найден

Я хочу установить PySide с помощью диспетчера пакетов PIP. Но он получает это сообщение об ошибке, в котором говорится, что не нашел nmake. Это не удивительно, потому что у меня не установлен MSVC, и я не собираюсь этого делать.

Installing collected packages: pyside
  Running setup.py install for pyside
    Removing c:\users\cnyffele\appdata\local\temp\pip_build_cnyffele\pyside\pyside_package
    Python architecture is 32bit
    nmake not found. Trying to initialize the MSVC env...
    Searching MSVC compiler version 9.0
    error: Failed to find the MSVC compiler version 9.0 on your system.

Однако программа setup.py может просто запустить make:

C:\Users\cnyffele>where make
C:\MinGW32-xy\bin\make.exe

C:\Users\cnyffele>where mingw32-make
C:\MinGW32-xy\bin\mingw32-make.exe

Но по какой-то причине он настаивает на том, что если платформа "win32", она должна использовать msvc, не пытаясь ничего другого. Однако он принимает параметры командной строки: я мог бы указать "make-spec" как "mingw" (см. Ниже).

С https://github.com/PySide/pyside-setup/blob/master/setup.py

OPTION_MAKESPEC = option_value("make-spec")

...

if sys.platform == "win32":
    if OPTION_MAKESPEC is None:
        OPTION_MAKESPEC = "msvc"
    if not OPTION_MAKESPEC in ["msvc", "mingw"]:
        print("Invalid option --make-spec. Available values are %s" % (["msvc", "mingw"]))
        sys.exit(1)

Как я могу заставить setyp.py использовать правильную марку при установке с PIP? Есть ли способ, чтобы PIP предоставлял параметры командной строки для setup.py при его запуске? Если это невозможно, как я могу запустить setup.py вручную после загрузки PIP?

1 ответ

Решение

PIP позволяет передавать параметры для настройки через параметры "--global-option" и "--install-option", как описано в справочном руководстве по pip.

Решение:

pip install --global-option="--make-spec=mingw" PySide

Некоторая дополнительная информация:

  • Перед установкой PySide с использованием pip вам необходимо установить cmake и Qt 4.8.
  • Ошибки сборки не позволили мне загрузить и установить PySide напрямую через pip. Мне нужно было загрузить бинарные пакеты с сайта pypi.python.org.

Используя предварительно загруженный пакет.whl, предполагая, что пакет находится в текущем рабочем каталоге:

pip install --global-option="--make-spec=mingw" PySide-1.2.4-cp27-none-win32.whl
Другие вопросы по тегам