2016-08-02 3 views
1

У меня есть сайт, построенный с .Net Core 1.0 (C#) и развернутый в Azure WebApp (32-разрядный режим).Как установить SciPy на Azure C# webapp?

Приложение использует некоторые скрипты python, и я смог создать виртуальный env (3.4.1) и успешно установленный numpy (1.11.0) с pip install numpy.

Проблема, с которой я сталкиваюсь, заключается в том, что я не могу установить SciPy. Попытка pip install scipy терпит неудачу из-за проблем с компилятором, которые я понимаю.

Следующая попытка состояла в том, чтобы загрузить пакеты расширения Python от Christoph Gohlke для Windows (from here), скопировав его в мое веб-приложение и попытавшись запустить «pip install scipy-0.18.0-cp34-cp34m-win32.whl» без успеха. Ошибки я получаю:

scipy-0.18.0-cp34-cp34m-win32.whl is not a supported wheel on this platform. 
Storing debug log for failure in D:\home\pip\pip.log 

pip.log содержит следующее:

scipy-0.18.0-cp34-cp34m-win32.whl is not a supported wheel on this platform. 
Exception information: 
Traceback (most recent call last): 
    File "D:\home\site\wwwroot\env\lib\site-packages\pip\basecommand.py", line 122, in main 
    status = self.run(options, args) 
    File "D:\home\site\wwwroot\env\lib\site-packages\pip\commands\install.py", line 257, in run 
    InstallRequirement.from_line(name, None)) 
    File "D:\home\site\wwwroot\env\lib\site-packages\pip\req.py", line 167, in from_line 
    raise UnsupportedWheel("%s is not a supported wheel on this platform." % wheel.filename) 
pip.exceptions.UnsupportedWheel: scipy-0.18.0-cp34-cp34m-win32.whl is not a supported wheel on this platform. 

Я попытался создать файл requirement.txt, как указано в Troubleshooting - Package Installation. Однако, поскольку это не приложение python, а вместо dotNet Core C#, похоже, он не заботится о файле require.txt и ничего не видит в файле deploy.cmd.

+1

Попробуйте сначала обновить пипс до последней версии 'python -m pip install --upprade pip', затем установите numpy + mkl' python -m pip install numpy-1.11.1 + mkl-cp34-cp34m-win32.whl ', затем установите scipy' python -m pip install scipy-0.18.0-cp34-cp34m-win32.whl'. Убедитесь, что установлен [Распространяемый пакет Microsoft Visual C++ 2010 (x86)] (https://www.microsoft.com/en-us/download/details.aspx?id=5555). – cgohlke

+0

@cgohlke, который работал как ожидалось. Не знаете, как проверить, установлен ли VC++, но были ли выполнены действия, и теперь я могу использовать scipy. Если вы создадите ответ, я приму его. – mdeblois

ответ

1

@mdeblois, ваше понимание верное, см. Официальное объяснение ниже.

Некоторые пакеты могут не устанавливаться с использованием pip при работе на Azure. Просто может быть, что пакет не доступен в Индексе пакетов Python. Возможно, требуется компилятор (компилятор недоступен на компьютере, на котором запущено веб-приложение в Azure App Service).

Для этого случая решение состоит в том, что вы можете обратиться к разделу Troubleshooting - Package Installation официального руководства, чтобы знать, как с этим бороться.

+0

Я обновил вопрос, чтобы сделать его более очевидным, что я не просто попробовал 'pip install scipy', но также попытался использовать обработанное Windows колесо. Добавление требования. Txt, похоже, ничего не делало, поскольку кажется, что для развертываний python это не так. Так просто использовать некоторые скрипты python, но он построен с использованием ядра dotnet с C#. – mdeblois

 Смежные вопросы

  • Нет связанных вопросов^_^