【问题标题】:cvxpy/ecos pip installation errorcvxpy/ecos pip 安装错误
【发布时间】:2018-11-08 12:14:28
【问题描述】:

这是一个临界的超级用户问题。我一直在使用 pip install <x> 从 Windows 10 上的 powershell 将软件包添加到我的 3.6.2 安装中。我正在努力安装 CVXPY。具体来说,我已经升级了 setuptools 并安装了 Visual Studio C++ 14。此外,我按照 github 用户的建议安装了 C++ 2008:https://github.com/embotech/ecos/issues/53。但是,我无法实施她的其他建议(编辑 ecosmodules.c),因为我认为我从 github 下载的原始包中不存在该文件

下面是我尝试通过pip install ecos 安装关键依赖项eCos 时的回溯。

 Collecting ecos
  Using cached https://files.pythonhosted.org/packages/b6/b4/988b15513b13e8ea2eac65e97d84221ac515a735a93f046e2a2a3d7863fc/ecos-2.0.5.tar.gz
Requirement already satisfied: numpy>=1.6 in c:\python36\lib\site-packages (from ecos) (1.14.2)
Requirement already satisfied: scipy>=0.9 in c:\python36\lib\site-packages (from ecos) (1.1.0)
Building wheels for collected packages: ecos
  Running setup.py bdist_wheel for ecos ... error
  Complete output from command c:\python36\python3.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\tpittman\\AppData\\Local\\Temp\\pip-install-6n1cuqcw\\ecos\\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\tpittman\AppData\Local\Temp\pip-wheel-cz4uosgf --python-tag cp36:
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build\lib.win-amd64-3.6
  copying src\ecos.py -> build\lib.win-amd64-3.6
  running build_ext
  building '_ecos' extension
  creating build\temp.win-amd64-3.6
  creating build\temp.win-amd64-3.6\Release
  creating build\temp.win-amd64-3.6\Release\src
  creating build\temp.win-amd64-3.6\Release\ecos
  creating build\temp.win-amd64-3.6\Release\ecos\external
  creating build\temp.win-amd64-3.6\Release\ecos\external\ldl
  creating build\temp.win-amd64-3.6\Release\ecos\external\ldl\src
  creating build\temp.win-amd64-3.6\Release\ecos\src
  creating build\temp.win-amd64-3.6\Release\ecos\external\amd
  creating build\temp.win-amd64-3.6\Release\ecos\external\amd\src
  creating build\temp.win-amd64-3.6\Release\ecos\ecos_bb
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX64\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MT -DPYTHON -DDLONG -DLDL_LONG -DCTRLC=1 -Iecos/include -Ic:\python36\lib\site-packages\numpy\core\include -Iecos/external/amd/include -Iecos/external/ldl/include -Iecos/external/SuiteSparse_config -Ic:\python36\include -Ic:\python36\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\Include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\ATLMFC\Include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" /Tcsrc/ecosmodule.c /Fobuild\temp.win-amd64-3.6\Release\src/ecosmodule.obj
  ecosmodule.c
  ecos/include\ecos_bb.h(72): warning C4005: 'INFINITY': macro redefinition
  C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(90): note: see previous definition of 'INFINITY'
  ecos/include\ecos_bb.h(74): warning C4005: 'isinf': macro redefinition
  C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(275): note: see previous definition of 'isinf'
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX64\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MT -DPYTHON -DDLONG -DLDL_LONG -DCTRLC=1 -Iecos/include -Ic:\python36\lib\site-packages\numpy\core\include -Iecos/external/amd/include -Iecos/external/ldl/include -Iecos/external/SuiteSparse_config -Ic:\python36\include -Ic:\python36\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\Include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\ATLMFC\Include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" /Tcecos/external/ldl/src/ldl.c /Fobuild\temp.win-amd64-3.6\Release\ecos/external/ldl/src/ldl.obj
  ldl.c
  C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(90): warning C4005: 'INFINITY': macro redefinition
  ecos/external/SuiteSparse_config\../../include/glblopts.h(58): note: see previous definition of 'INFINITY'
  C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(94): warning C4005: 'NAN': macro redefinition
  ecos/external/SuiteSparse_config\../../include/glblopts.h(53): note: see previous definition of 'NAN'
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX64\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MT -DPYTHON -DDLONG -DLDL_LONG -DCTRLC=1 -Iecos/include -Ic:\python36\lib\site-packages\numpy\core\include -Iecos/external/amd/include -Iecos/external/ldl/include -Iecos/external/SuiteSparse_config -Ic:\python36\include -Ic:\python36\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\Include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\ATLMFC\Include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" /Tcecos/src/cone.c /Fobuild\temp.win-amd64-3.6\Release\ecos/src/cone.obj
  cone.c
  C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(90): warning C4005: 'INFINITY': macro redefinition
  c:\users\tpittman\appdata\local\temp\pip-install-6n1cuqcw\ecos\ecos\include\glblopts.h(58): note: see previous definition of 'INFINITY'
  C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(94): warning C4005: 'NAN': macro redefinition
  c:\users\tpittman\appdata\local\temp\pip-install-6n1cuqcw\ecos\ecos\include\glblopts.h(53): note: see previous definition of 'NAN'
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX64\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MT -DPYTHON -DDLONG -DLDL_LONG -DCTRLC=1 -Iecos/include -Ic:\python36\lib\site-packages\numpy\core\include -Iecos/external/amd/include -Iecos/external/ldl/include -Iecos/external/SuiteSparse_config -Ic:\python36\include -Ic:\python36\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\Include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\ATLMFC\Include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" /Tcecos/src/ctrlc.c /Fobuild\temp.win-amd64-3.6\Release\ecos/src/ctrlc.obj
  ctrlc.c
  C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(90): warning C4005: 'INFINITY': macro redefinition
  c:\users\tpittman\appdata\local\temp\pip-install-6n1cuqcw\ecos\ecos\include\glblopts.h(58): note: see previous definition of 'INFINITY'
  C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(94): warning C4005: 'NAN': macro redefinition
  c:\users\tpittman\appdata\local\temp\pip-install-6n1cuqcw\ecos\ecos\include\glblopts.h(53): note: see previous definition of 'NAN'
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX64\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MT -DPYTHON -DDLONG -DLDL_LONG -DCTRLC=1 -Iecos/include -Ic:\python36\lib\site-packages\numpy\core\include -Iecos/external/amd/include -Iecos/external/ldl/include -Iecos/external/SuiteSparse_config -Ic:\python36\include -Ic:\python36\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\Include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\ATLMFC\Include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" /Tcecos/src/ecos.c /Fobuild\temp.win-amd64-3.6\Release\ecos/src/ecos.obj
  ecos.c
  C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(90): warning C4005: 'INFINITY': macro redefinition
  c:\users\tpittman\appdata\local\temp\pip-install-6n1cuqcw\ecos\ecos\include\glblopts.h(58): note: see previous definition of 'INFINITY'
  C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(94): warning C4005: 'NAN': macro redefinition
  c:\users\tpittman\appdata\local\temp\pip-install-6n1cuqcw\ecos\ecos\include\glblopts.h(53): note: see previous definition of 'NAN'
  ecos/src/ecos.c(1093): warning C4013: '_set_output_format' undefined; assuming extern returning int
  ecos/src/ecos.c(1093): error C2065: '_TWO_DIGIT_EXPONENT': undeclared identifier
  error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Tools\\MSVC\\14.14.26428\\bin\\HostX64\\x64\\cl.exe' failed with exit status 2

  ----------------------------------------
  Failed building wheel for ecos
  Running setup.py clean for ecos
Failed to build ecos
Installing collected packages: ecos
  Running setup.py install for ecos ... error
    Complete output from command c:\python36\python3.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\tpittman\\AppData\\Local\\Temp\\pip-install-6n1cuqcw\\ecos\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\tpittman\AppData\Local\Temp\pip-record-ngyh01oq\install-record.txt --single-version-externally-managed --compile:
    running install
    running build
    running build_py
    creating build
    creating build\lib.win-amd64-3.6
    copying src\ecos.py -> build\lib.win-amd64-3.6
    running build_ext
    building '_ecos' extension
    creating build\temp.win-amd64-3.6
    creating build\temp.win-amd64-3.6\Release
    creating build\temp.win-amd64-3.6\Release\src
    creating build\temp.win-amd64-3.6\Release\ecos
    creating build\temp.win-amd64-3.6\Release\ecos\external
    creating build\temp.win-amd64-3.6\Release\ecos\external\ldl
    creating build\temp.win-amd64-3.6\Release\ecos\external\ldl\src
    creating build\temp.win-amd64-3.6\Release\ecos\src
    creating build\temp.win-amd64-3.6\Release\ecos\external\amd
    creating build\temp.win-amd64-3.6\Release\ecos\external\amd\src
    creating build\temp.win-amd64-3.6\Release\ecos\ecos_bb
    C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX64\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MT -DPYTHON -DDLONG -DLDL_LONG -DCTRLC=1 -Iecos/include -Ic:\python36\lib\site-packages\numpy\core\include -Iecos/external/amd/include -Iecos/external/ldl/include -Iecos/external/SuiteSparse_config -Ic:\python36\include -Ic:\python36\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\Include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\ATLMFC\Include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" /Tcsrc/ecosmodule.c /Fobuild\temp.win-amd64-3.6\Release\src/ecosmodule.obj
    ecosmodule.c
    ecos/include\ecos_bb.h(72): warning C4005: 'INFINITY': macro redefinition
    C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(90): note: see previous definition of 'INFINITY'
    ecos/include\ecos_bb.h(74): warning C4005: 'isinf': macro redefinition
    C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(275): note: see previous definition of 'isinf'
    C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX64\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MT -DPYTHON -DDLONG -DLDL_LONG -DCTRLC=1 -Iecos/include -Ic:\python36\lib\site-packages\numpy\core\include -Iecos/external/amd/include -Iecos/external/ldl/include -Iecos/external/SuiteSparse_config -Ic:\python36\include -Ic:\python36\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\Include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\ATLMFC\Include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" /Tcecos/external/ldl/src/ldl.c /Fobuild\temp.win-amd64-3.6\Release\ecos/external/ldl/src/ldl.obj
    ldl.c
    C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(90): warning C4005: 'INFINITY': macro redefinition
    ecos/external/SuiteSparse_config\../../include/glblopts.h(58): note: see previous definition of 'INFINITY'
    C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(94): warning C4005: 'NAN': macro redefinition
    ecos/external/SuiteSparse_config\../../include/glblopts.h(53): note: see previous definition of 'NAN'
    C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX64\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MT -DPYTHON -DDLONG -DLDL_LONG -DCTRLC=1 -Iecos/include -Ic:\python36\lib\site-packages\numpy\core\include -Iecos/external/amd/include -Iecos/external/ldl/include -Iecos/external/SuiteSparse_config -Ic:\python36\include -Ic:\python36\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\Include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\ATLMFC\Include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" /Tcecos/src/cone.c /Fobuild\temp.win-amd64-3.6\Release\ecos/src/cone.obj
    cone.c
    C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(90): warning C4005: 'INFINITY': macro redefinition
    c:\users\tpittman\appdata\local\temp\pip-install-6n1cuqcw\ecos\ecos\include\glblopts.h(58): note: see previous definition of 'INFINITY'
    C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(94): warning C4005: 'NAN': macro redefinition
    c:\users\tpittman\appdata\local\temp\pip-install-6n1cuqcw\ecos\ecos\include\glblopts.h(53): note: see previous definition of 'NAN'
    C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX64\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MT -DPYTHON -DDLONG -DLDL_LONG -DCTRLC=1 -Iecos/include -Ic:\python36\lib\site-packages\numpy\core\include -Iecos/external/amd/include -Iecos/external/ldl/include -Iecos/external/SuiteSparse_config -Ic:\python36\include -Ic:\python36\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\Include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\ATLMFC\Include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" /Tcecos/src/ctrlc.c /Fobuild\temp.win-amd64-3.6\Release\ecos/src/ctrlc.obj
    ctrlc.c
    C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(90): warning C4005: 'INFINITY': macro redefinition
    c:\users\tpittman\appdata\local\temp\pip-install-6n1cuqcw\ecos\ecos\include\glblopts.h(58): note: see previous definition of 'INFINITY'
    C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(94): warning C4005: 'NAN': macro redefinition
    c:\users\tpittman\appdata\local\temp\pip-install-6n1cuqcw\ecos\ecos\include\glblopts.h(53): note: see previous definition of 'NAN'
    C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\bin\HostX64\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MT -DPYTHON -DDLONG -DLDL_LONG -DCTRLC=1 -Iecos/include -Ic:\python36\lib\site-packages\numpy\core\include -Iecos/external/amd/include -Iecos/external/ldl/include -Iecos/external/SuiteSparse_config -Ic:\python36\include -Ic:\python36\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\Include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.14.26428\ATLMFC\Include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" /Tcecos/src/ecos.c /Fobuild\temp.win-amd64-3.6\Release\ecos/src/ecos.obj
    ecos.c
    C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(90): warning C4005: 'INFINITY': macro redefinition
    c:\users\tpittman\appdata\local\temp\pip-install-6n1cuqcw\ecos\ecos\include\glblopts.h(58): note: see previous definition of 'INFINITY'
    C:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt\corecrt_math.h(94): warning C4005: 'NAN': macro redefinition
    c:\users\tpittman\appdata\local\temp\pip-install-6n1cuqcw\ecos\ecos\include\glblopts.h(53): note: see previous definition of 'NAN'
    ecos/src/ecos.c(1093): warning C4013: '_set_output_format' undefined; assuming extern returning int
    ecos/src/ecos.c(1093): error C2065: '_TWO_DIGIT_EXPONENT': undeclared identifier
    error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Tools\\MSVC\\14.14.26428\\bin\\HostX64\\x64\\cl.exe' failed with exit status 2

    ----------------------------------------
Command "c:\python36\python3.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\tpittman\\AppData\\Local\\Temp\\pip-install-6n1cuqcw\\ecos\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\tpittman\AppData\Local\Temp\pip-record-ngyh01oq\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\Users\tpittman\AppData\Local\Temp\pip-install-6n1cuqcw\ecos\

【问题讨论】:

  • 你从 github 上抓取了哪个版本?你不能使用 anaconda/miniconda 吗?您需要 ecos(求解器)吗?
  • 我可以试试 anaconda,你说得对。是的,我需要 ecos(因为 cvxpy 需要它)。我刚刚从这个链接下载了 zip:github.com/embotech/ecos
  • ecos 是一个要求,因为它是一个开源的圆锥求解器。如果您将使用 gurobi、fico 或任何其他求解器而不是 ecos,则可以手动将其从其依赖项中删除。关于版本,我问是因为this (somewhat more recent) patch。也许又是 VS2015 的时候了。但说实话:anaconda 应该是无痛的。
  • 这是有道理的。您能否提供有关如何使用自定义依赖项安装 cvxpy 的链接或基本说明?
  • 唯一要做的就是从setup.py中删除ecos。但这也意味着:从 git/release 安装(例如python setup.py install),可能会导致其他问题。虽然这在过去对我有用,但我不建议做任何非 anaconda 的事情。这也是官方安装。

标签: python pip cvxpy


【解决方案1】:

在基于 Anaconda 的 Win64 Python36 安装一个

conda install ecos

为我工作。

允许 pip install cvxpy.

【讨论】:

    【解决方案2】:

    我认为最好的“解决方案”是使用 windows linux 子系统。从这里,我能够使用python3 -m pip install cmakepython3 -m pip install cvxpy 安装cvxpy 和python 3.5 上的所有依赖项

    对于那些还没有安装 WLS 的人来说,这不是微不足道的,而是相对轻松的。 https://docs.microsoft.com/en-us/windows/wsl/install-win10

    【讨论】:

      【解决方案3】:

      如果您正在使用我建议在 Visual Studio 中安装所有 C++ 开发包。对于我来说可以下载最新的构建工具from

      在详细信息部分查看 C++/CLI 支持。重启后,我可以正常运行 pip install cvxpy 了。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-04-03
        • 2019-04-01
        • 1970-01-01
        • 2018-12-06
        • 2019-01-30
        • 2016-04-28
        • 2018-06-17
        相关资源
        最近更新 更多