2016-04-29 3 views
2

Я пытаюсь создать приложение для оптимизации портфеля в Python для работы. Одним из необходимых модулей является CVXOPT. Когда я пытаюсь установить модуль, я получаю сообщение об ошибке, что система не может найти vcvarsall.bat. Я обнаружил, что несколько человек столкнулись с одной и той же проблемой, и я пробовал все решения, которые я мог, с других сообщений, которые я видел. Я установил самую последнюю версию Microsoft Visual C++, я обновил setuptools ... ничего не работает. Может ли кто-нибудь дать представление? Вот выход из командной строки при попытке выполняется команда «пункт установить cvxopt:»Не удалось построить колесо для cvxopt - Не удалось найти vcvarsall.bat

Microsoft Windows [Version 6.1.7601] 
Copyright (c) 2009 Microsoft Corporation. All rights reserved. 

C:\Windows\System32>pip install cvxopt 
Collecting cvxopt 
    Using cached cvxopt-1.1.8.tar.gz 
Building wheels for collected packages: cvxopt 
    Running setup.py bdist_wheel for cvxopt ... error 
    Complete output from command z:\users\mtlagrone\appdata\local\programs\python\ 
python35\python.exe -u -c "import setuptools, tokenize;__file__='Z:\\Users\\MTLA 
GR~1\\AppData\\Local\\Temp\\pip-build-85pwcjv8\\cvxopt\\setup.py';exec(compile(g 
etattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 
'exec'))" bdist_wheel -d Z:\Users\MTLAGR~1\AppData\Local\Temp\tmp02__bk90pip-wh 
eel- --python-tag cp35: 
    running bdist_wheel 
    running build 
    running build_py 
    creating build 
    creating build\lib.win-amd64-3.5 
    creating build\lib.win-amd64-3.5\cvxopt 
    copying src\python\coneprog.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\cvxprog.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\info.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\misc.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\modeling.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\msk.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\printing.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\solvers.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\__init__.py -> build\lib.win-amd64-3.5\cvxopt 
    running build_ext 
    building 'base' extension 
    error: Unable to find vcvarsall.bat 

    ---------------------------------------- 
    Failed building wheel for cvxopt 
    Running setup.py clean for cvxopt 
Failed to build cvxopt 
Installing collected packages: cvxopt 
    Running setup.py install for cvxopt ... error 
    Complete output from command z:\users\mtlagrone\appdata\local\programs\pytho 
n\python35\python.exe -u -c "import setuptools, tokenize;__file__='Z:\\Users\\MT 
LAGR~1\\AppData\\Local\\Temp\\pip-build-85pwcjv8\\cvxopt\\setup.py';exec(compile 
(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file_ 
_, 'exec'))" install --record Z:\Users\MTLAGR~1\AppData\Local\Temp\pip-yr46es6u- 
record\install-record.txt --single-version-externally-managed --compile: 
    running install 
    running build 
    running build_py 
    creating build 
    creating build\lib.win-amd64-3.5 
    creating build\lib.win-amd64-3.5\cvxopt 
    copying src\python\coneprog.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\cvxprog.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\info.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\misc.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\modeling.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\msk.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\printing.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\solvers.py -> build\lib.win-amd64-3.5\cvxopt 
    copying src\python\__init__.py -> build\lib.win-amd64-3.5\cvxopt 
    running build_ext 
    building 'base' extension 
    error: Unable to find vcvarsall.bat 

    ---------------------------------------- 
Command "z:\users\mtlagrone\appdata\local\programs\python\python35\python.exe -u 
-c "import setuptools, tokenize;__file__='Z:\\Users\\MTLAGR~1\\AppData\\Local\\ 
Temp\\pip-build-85pwcjv8\\cvxopt\\setup.py';exec(compile(getattr(tokenize, 'open 
', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --r 
ecord Z:\Users\MTLAGR~1\AppData\Local\Temp\pip-yr46es6u-record\install-record.tx 
t --single-version-externally-managed --compile" failed with error code 1 in Z:\ 
Users\MTLAGR~1\AppData\Local\Temp\pip-build-85pwcjv8\cvxopt\ 

C:\Windows\System32> 

ответ

0

Похоже, что библиотека Python имеет нативный компонент к нему, который должен быть составлен с использованием Visual Studio инструментов для сборки.

Согласно Python documentation для Python 3.5 (с помощью CPython), вам необходимо установить build tools для Visual Studio 2015.

Вам нужно будет проверить Windows, 8.1 и Windows 10 вариантов SDK. При попытке запуска pip install снова, note that:

Вы должны запускать команды из Visual C++ сборки Командная строка (C: \ Program Files (x86) \ Microsoft Visual C++ Build Tools) каждый раз, когда вы хотите скомпилировать с Python.

0

Если вы используете python 2.7 для Windows, вам понадобится компилятор VS2008 - это тот, с которым сам компилятор python компилируется, и поэтому все пакеты. Вы должны получить это отсюда: https://www.microsoft.com/en-gb/download/details.aspx?id=44266

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