在 Mac OS X 11.2.2 与 Anaconda 上安装 PyGMO 时发生冲突
Conflicts during PyGMO installation on Mac OS X 11.2.2 with Anaconda
我正在尝试在 Mac OS X 11.2.2 上安装 PyGMO(我重新安装了 Anaconda,因此 Anaconda Navigator 现在已升级到 2.0.1。)
安装开始后,它会收集包元数据并报告发现包冲突。我怎样才能解决冲突,这样我就可以 运行 PyGMO?
这里是开始:
$ conda install -c conda-forge pygmo
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: \
Found conflicts! Looking for incompatible packages.
几个小时后,终端 returns 长长的冲突报告并停在那里。这是一个有代表性的输出:
Package selectors2 conflicts for:
wurlitzer -> selectors2
spyder-kernels -> wurlitzer[version='>=1.0.3'] -> selectors2
Package mpmath conflicts for:
anaconda==2020.07=py38_0 -> sympy==1.6.1=py38_0 -> mpmath[version='>=0.19']
sympy -> mpmath[version='>=0.19']
anaconda==2020.07=py38_0 -> mpmath==1.1.0=py38_0
Package anyio conflicts for:
jupyterlab -> jupyter_server[version='>=1.4,<2'] -> anyio[version='>=2.0.2|>=2.0.2,<3']
jupyterlab_server -> jupyter_server[version='>=1.4,<2'] -> anyio[version='>=2.0.2|>=2.0.2,<3']
Package py-lief conflicts for:
conda-build -> py-lief
anaconda==2020.07=py38_0 -> py-lief==0.10.1=py38haf313ee_0
Note that strict channel priority may have removed packages required for satisfiability.
我也关注了the official installation guidelines and set the additional channel and its priority. I also checked this command but that is essentially the same thing. I also tried the installation commands from PyPI. And I tried this
有两种可能的状态:
Conda 求解器是正确的。 您之前在环境中的包约束与安装不兼容 pygmo
。在那种情况下,您要么需要追踪冲突的约束并尝试手动松开它们(不建议 Anaconda base),或者您需要创建一个新环境:
conda create -n pygmo_env -c conda-forge pygmo
包括你需要的任何其他包。例如,ipykernel
如果您打算将其用作 Jupyter 内核。
Conda 解算器出问题了。 解算器在不应该报告问题的情况下解决了问题。这种情况会发生,尤其是在混合通道时(defaults 和 conda-forge)。许多人发现 Mamba,Conda 的直接替代品,更可靠(而且绝对更快!)。
conda install conda-forge::mamba
mamba install -c conda-forge pygmo
不幸的是,很难说出它处于哪种状态。我们中的许多人都陷入了试图整理约束报告的困境,有时确实找不到合理的冲突。出于实际目的,我建议尝试 mamba
。如果它也失败了,那么至少你会有很好的证据表明你处于 (1).
状态
附加评论
尽管有关于从 Anaconda Cloud 中的任何渠道安装的乐观文档,但 Anaconda 发行版受到高度限制 - 即,包太多 - 并且仅测试来自 默认值 [= 的包的共同安装45=]频道。此外,Conda Forge 和 Anaconda 具有不同的构建堆栈,因此即使求解器允许共同安装,也可能存在运行时包不兼容问题。
一般来说,我建议自由使用环境创建。旨在为单独的 tasks/projects 提供单独的环境。如果您计划经常使用超过香草 Anaconda 发行版,请考虑 Miniforge 或其变体之一。人们总是可以用 conda create -n foo -c defaults anaconda
.
创建一个 Anaconda 环境
我正在尝试在 Mac OS X 11.2.2 上安装 PyGMO(我重新安装了 Anaconda,因此 Anaconda Navigator 现在已升级到 2.0.1。)
安装开始后,它会收集包元数据并报告发现包冲突。我怎样才能解决冲突,这样我就可以 运行 PyGMO?
这里是开始:
$ conda install -c conda-forge pygmo
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: \
Found conflicts! Looking for incompatible packages.
几个小时后,终端 returns 长长的冲突报告并停在那里。这是一个有代表性的输出:
Package selectors2 conflicts for:
wurlitzer -> selectors2
spyder-kernels -> wurlitzer[version='>=1.0.3'] -> selectors2
Package mpmath conflicts for:
anaconda==2020.07=py38_0 -> sympy==1.6.1=py38_0 -> mpmath[version='>=0.19']
sympy -> mpmath[version='>=0.19']
anaconda==2020.07=py38_0 -> mpmath==1.1.0=py38_0
Package anyio conflicts for:
jupyterlab -> jupyter_server[version='>=1.4,<2'] -> anyio[version='>=2.0.2|>=2.0.2,<3']
jupyterlab_server -> jupyter_server[version='>=1.4,<2'] -> anyio[version='>=2.0.2|>=2.0.2,<3']
Package py-lief conflicts for:
conda-build -> py-lief
anaconda==2020.07=py38_0 -> py-lief==0.10.1=py38haf313ee_0
Note that strict channel priority may have removed packages required for satisfiability.
我也关注了the official installation guidelines and set the additional channel and its priority. I also checked this command but that is essentially the same thing. I also tried the installation commands from PyPI. And I tried this
有两种可能的状态:
Conda 求解器是正确的。 您之前在环境中的包约束与安装不兼容
pygmo
。在那种情况下,您要么需要追踪冲突的约束并尝试手动松开它们(不建议 Anaconda base),或者您需要创建一个新环境:conda create -n pygmo_env -c conda-forge pygmo
包括你需要的任何其他包。例如,
ipykernel
如果您打算将其用作 Jupyter 内核。Conda 解算器出问题了。 解算器在不应该报告问题的情况下解决了问题。这种情况会发生,尤其是在混合通道时(defaults 和 conda-forge)。许多人发现 Mamba,Conda 的直接替代品,更可靠(而且绝对更快!)。
conda install conda-forge::mamba mamba install -c conda-forge pygmo
不幸的是,很难说出它处于哪种状态。我们中的许多人都陷入了试图整理约束报告的困境,有时确实找不到合理的冲突。出于实际目的,我建议尝试 mamba
。如果它也失败了,那么至少你会有很好的证据表明你处于 (1).
附加评论
尽管有关于从 Anaconda Cloud 中的任何渠道安装的乐观文档,但 Anaconda 发行版受到高度限制 - 即,包太多 - 并且仅测试来自 默认值 [= 的包的共同安装45=]频道。此外,Conda Forge 和 Anaconda 具有不同的构建堆栈,因此即使求解器允许共同安装,也可能存在运行时包不兼容问题。
一般来说,我建议自由使用环境创建。旨在为单独的 tasks/projects 提供单独的环境。如果您计划经常使用超过香草 Anaconda 发行版,请考虑 Miniforge 或其变体之一。人们总是可以用 conda create -n foo -c defaults anaconda
.