python - 没有为 scs==2.1.4 找到匹配的分布
问题描述
我在 Windows 10 64 位上使用 conda 4.10.3。
我正在尝试使用这两个文件创建一个 conda 环境:ml4t.yml和ml4t-base.yml。
首先,我尝试过:
mamba env create -f installation/windows/ml4t.yml
我收到一个错误,所以我尝试了:
mamba env create -f installation/ml4t-base.yml
第一个文件ml4t.yml
是使用笔记本中使用的最新版本库创建环境(截至 2021 年 4 月)。
第二个文件,ml4t-base.yml
,是使用您阅读本文时的最新库版本创建环境。
您可以在此处找到有关安装的更多信息。
pip
在这两种情况下,我的包都有错误scs
。
对于第一个文件,ml4t.yml
我收到以下错误消息:
错误:没有为 scs==2.1.4 找到匹配的分布
第二个我收到此错误消息:
ERROR: Failed building wheel for scs
ERROR: Command errored out with exit status 1:
command: 'D:\Programs\anaconda3\envs\ml4t\python.exe' -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\liber\\AppData\\Local\\Temp\\pip-install-j5wtb8f1\\scs_401115d47d5d45089d65831a3a0a65f4\\setup.py'"'"'; __file__='"'"'C:\\Users\\liber\\AppData\\Local\\Temp\\pip-install-j5wtb8f1\\scs_401115d47d5d45089d65831a3a0a65f4\\setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\MyUser\AppData\Local\Temp\pip-record-5xnj3hxm\install-record.txt' --single-version-externally-managed --compile --install-headers 'D:\Programs\anaconda3\envs\ml4t\Include\scs'
cwd: C:\Users\MyUser\AppData\Local\Temp\pip-install-j5wtb8f1\scs_401115d47d5d45089d65831a3a0a65f4\
Complete output (27 lines):
Namespace(blas64=False, extraverbose=False, float32=False, gpu=False, int32=False, openmp=False, root_dir='./', scs=False)
using blas_opt / lapack_opt
blas_opt / lapack_opt install failed, trying blas / lapack
running install
running build
running build_py
creating build
creating build\lib.win-amd64-3.8
copying scs.py -> build\lib.win-amd64-3.8
running build_ext
No module named 'numpy.distutils._msvccompiler' in numpy.distutils; trying from distutils
building '_scs_direct' extension
creating build\temp.win-amd64-3.8
creating build\temp.win-amd64-3.8\Release
creating build\temp.win-amd64-3.8\Release\src
creating build\temp.win-amd64-3.8\Release\linsys
creating build\temp.win-amd64-3.8\Release\linsys\direct
creating build\temp.win-amd64-3.8\Release\linsys\direct\external
cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DPYTHON -DCTRLC=1 -DCOPYAMATRIX -DDLONG=1 -I./ -I./include -ID:\Programs\anaconda3\envs\ml4t\lib\site-packages\numpy\core\include -I./linsys -I./linsys/direct/ -I./linsys/direct/external/ -ID:\Programs\anaconda3\envs\ml4t\include -ID:\Programs\anaconda3\envs\ml4t\include /Tcscsmodule.c /Fobuild\temp.win-amd64-3.8\Release\scsmodule.obj -O3
running install
running build
running build_py
running build_ext
No module named 'numpy.distutils._msvccompiler' in numpy.distutils; trying from distutils
building '_scs_direct' extension
cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DPYTHON -DCTRLC=1 -DCOPYAMATRIX -DDLONG=1 -I./ -I./include -ID:\Programs\anaconda3\envs\ml4t\lib\site-packages\numpy\core\include -I./linsys -I./linsys/direct/ -I./linsys/direct/external/ -ID:\Programs\anaconda3\envs\ml4t\include -ID:\Programs\anaconda3\envs\ml4t\include /Tcscsmodule.c /Fobuild\temp.win-amd64-3.8\Release\scsmodule.obj -O3
error: Command "cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DPYTHON -DCTRLC=1 -DCOPYAMATRIX -DDLONG=1 -I./ -I./include -ID:\Programs\anaconda3\envs\ml4t\lib\site-packages\numpy\core\include -I./linsys -I./linsys/direct/ -I./linsys/direct/external/ -ID:\Programs\anaconda3\envs\ml4t\include -ID:\Programs\anaconda3\envs\ml4t\include /Tcscsmodule.c /Fobuild\temp.win-amd64-3.8\Release\scsmodule.obj -O3" failed with exit status 127
----------------------------------------
ERROR: Command errored out with exit status 1: 'D:\Programs\anaconda3\envs\ml4t\python.exe' -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\liber\\AppData\\Local\\Temp\\pip-install-j5wtb8f1\\scs_401115d47d5d45089d65831a3a0a65f4\\setup.py'"'"'; __file__='"'"'C:\\Users\\liber\\AppData\\Local\\Temp\\pip-install-j5wtb8f1\\scs_401115d47d5d45089d65831a3a0a65f4\\setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\MyUser\AppData\Local\Temp\pip-record-5xnj3hxm\install-record.txt' --single-version-externally-managed --compile --install-headers 'D:\Programs\anaconda3\envs\ml4t\Include\scs' Check the logs for full command output.
failed
CondaEnvException: Pip failed
您可以在pastebin中找到完整的输出。
似乎numpy
版本和之间存在兼容性错误scs
,如您在此处看到的:
目前,安装 SCS 需要安装 numpy<1.20。
我试图将第一个文件中的 numpy 版本更改为,ml4t.yml
但- numpy=1.19.5
我仍然得到同样的错误。
我该如何解决这个问题?
解决方案
我已经解决了移动大部分 pip 包以使用 mamba 安装它们的问题。
我已更改原始文件ml4t.yml让该pip
部分如下:
- pip:
- backtrader==1.9.76.123
- livelossplot==0.5.4
- pyportfolioopt==1.4.1
- qdldl==0.1.5.post0
- osqp==0.6.2.post0
- pymdptoolbox==4.0b3
换句话说,我已将 conda 中可用的所有软件包从该pip
部分移动到该dependencies
部分。
推荐阅读
- docker - 无法让 traefik 在 docker swarm 上充当反向代理
- angular - Angular6 在模块 forRoot() 中使用获取的配置变量
- python - 一段时间后 Scrapy 超时
- angularjs - 隐藏基于Angularjs中的状态值
- javascript - 使用 getUserMedia 的 iOS 设备不会出现 1080p 分辨率
- vue.js - 当语言模式设置为 Vue 时,样式 Intellisense 在 VS Code 中不起作用
- python - 是否可以将 django-cryptography 与 filter 或 get 方法一起使用?
- html - 将最后一个孩子放在前一个孩子旁边 - Flexbox
- r - 从 ks 包绘制 kde.local.test 结果时,fhat 评估点的误差单调增加
- api - 通用 Windows 平台上的 User32 Windows UI Api