python - Pipenv 在安装 TensorFlow 2.4.1 时无法锁定
问题描述
2021-02-06:我最终使用pip
.
原始问题如下所示。
正如我在标题中提到的,pipenv 在安装 TensorFlow(版本 2.4.1)时无法锁定。我想知道这个问题的解决方案。
当前环境是:
macOS Big Sur 11.1
python 3.8.7(pyenv-installed)
pyenv 1.2.22(homebrew-installed)
pipenv 2020.11.15(homebrew-installed)
pip 21.0
我所做的和回应是:
mkdir ~/tf && cd ~/tf
pyenv local 3.8.7
-> 更改为 python 3.8.7pipenv --python 3.8.7
-> 创建虚拟环境和 Pipfilepipenv shell
pip install --upgrade pip
-> 将 pip 从 20.2.4 升级到 21.0pipenv install tensorflow
->
Installing tensorflow...
Adding tensorflow to Pipfile's [packages]...
✔ Installation Succeeded
Pipfile.lock not found, creating...
Locking [dev-packages] dependencies...
Locking [packages] dependencies...
Building requirements...
Resolving dependencies...
✘ Locking Failed!
[ResolutionFailure]: File "/usr/local/Cellar/pipenv/2020.11.15/libexec/lib/python3.9/site-packages/pipenv/resolver.py", line 741, in _main
[ResolutionFailure]: resolve_packages(pre, clear, verbose, system, write, requirements_dir, packages, dev)
[ResolutionFailure]: File "/usr/local/Cellar/pipenv/2020.11.15/libexec/lib/python3.9/site-packages/pipenv/resolver.py", line 702, in resolve_packages
[ResolutionFailure]: results, resolver = resolve(
[ResolutionFailure]: File "/usr/local/Cellar/pipenv/2020.11.15/libexec/lib/python3.9/site-packages/pipenv/resolver.py", line 684, in resolve
[ResolutionFailure]: return resolve_deps(
[ResolutionFailure]: File "/usr/local/Cellar/pipenv/2020.11.15/libexec/lib/python3.9/site-packages/pipenv/utils.py", line 1395, in resolve_deps
[ResolutionFailure]: results, hashes, markers_lookup, resolver, skipped = actually_resolve_deps(
[ResolutionFailure]: File "/usr/local/Cellar/pipenv/2020.11.15/libexec/lib/python3.9/site-packages/pipenv/utils.py", line 1108, in actually_resolve_deps
[ResolutionFailure]: resolver.resolve()
[ResolutionFailure]: File "/usr/local/Cellar/pipenv/2020.11.15/libexec/lib/python3.9/site-packages/pipenv/utils.py", line 833, in resolve
[ResolutionFailure]: raise ResolutionFailure(message=str(e))
[pipenv.exceptions.ResolutionFailure]: Warning: Your dependencies could not be resolved. You likely have a mismatch in your sub-dependencies.
First try clearing your dependency cache with $ pipenv lock --clear, then try the original command again.
Alternatively, you can use $ pipenv install --skip-lock to bypass this mechanism, then run $ pipenv graph to inspect the situation.
Hint: try $ pipenv lock --pre if it is a pre-release dependency.
ERROR: Could not find a version that matches tensorflow (from -r /var/folders/66/qc27xk113h97ysq8g96dq6lw0000gn/T/pipenvi9b634u2requirements/pipenv-rgesnhxh-constraints.txt (line 2))
No versions found
Was https://pypi.org/simple reachable?
我试过pipenv lock --clear
了,但它不起作用并返回了上面相同的错误消息。
python -c 'import tensorflow as tf; print(tf.__version__)'
貌似TensorFlow自returns安装成功2.4.1
,版本支持Python 3.8.7。我还尝试pip
在虚拟环境之外安装 TensorFlow,它成功安装了 TensorFlow 2.4.1。
这是结果,pipenv graph
似乎没有依赖冲突(可能存在我没有注意到的冲突)。
tensorflow==2.4.1
- absl-py [required: ~=0.10, installed: 0.11.0]
- six [required: Any, installed: 1.15.0]
- astunparse [required: ~=1.6.3, installed: 1.6.3]
- six [required: >=1.6.1,<2.0, installed: 1.15.0]
- wheel [required: >=0.23.0,<1.0, installed: 0.36.2]
- flatbuffers [required: ~=1.12.0, installed: 1.12]
- gast [required: ==0.3.3, installed: 0.3.3]
- google-pasta [required: ~=0.2, installed: 0.2.0]
- six [required: Any, installed: 1.15.0]
- grpcio [required: ~=1.32.0, installed: 1.32.0]
- six [required: >=1.5.2, installed: 1.15.0]
- h5py [required: ~=2.10.0, installed: 2.10.0]
- numpy [required: >=1.7, installed: 1.19.5]
- six [required: Any, installed: 1.15.0]
- keras-preprocessing [required: ~=1.1.2, installed: 1.1.2]
- numpy [required: >=1.9.1, installed: 1.19.5]
- six [required: >=1.9.0, installed: 1.15.0]
- numpy [required: ~=1.19.2, installed: 1.19.5]
- opt-einsum [required: ~=3.3.0, installed: 3.3.0]
- numpy [required: >=1.7, installed: 1.19.5]
- protobuf [required: >=3.9.2, installed: 3.14.0]
- six [required: >=1.9, installed: 1.15.0]
- six [required: ~=1.15.0, installed: 1.15.0]
- tensorboard [required: ~=2.4, installed: 2.4.1]
- absl-py [required: >=0.4, installed: 0.11.0]
- six [required: Any, installed: 1.15.0]
- google-auth [required: >=1.6.3,<2, installed: 1.24.0]
- cachetools [required: >=2.0.0,<5.0, installed: 4.2.1]
- pyasn1-modules [required: >=0.2.1, installed: 0.2.8]
- pyasn1 [required: >=0.4.6,<0.5.0, installed: 0.4.8]
- rsa [required: >=3.1.4,<5, installed: 4.7]
- pyasn1 [required: >=0.1.3, installed: 0.4.8]
- setuptools [required: >=40.3.0, installed: 50.3.2]
- six [required: >=1.9.0, installed: 1.15.0]
- google-auth-oauthlib [required: >=0.4.1,<0.5, installed: 0.4.2]
- google-auth [required: Any, installed: 1.24.0]
- cachetools [required: >=2.0.0,<5.0, installed: 4.2.1]
- pyasn1-modules [required: >=0.2.1, installed: 0.2.8]
- pyasn1 [required: >=0.4.6,<0.5.0, installed: 0.4.8]
- rsa [required: >=3.1.4,<5, installed: 4.7]
- pyasn1 [required: >=0.1.3, installed: 0.4.8]
- setuptools [required: >=40.3.0, installed: 50.3.2]
- six [required: >=1.9.0, installed: 1.15.0]
- requests-oauthlib [required: >=0.7.0, installed: 1.3.0]
- oauthlib [required: >=3.0.0, installed: 3.1.0]
- requests [required: >=2.0.0, installed: 2.25.1]
- certifi [required: >=2017.4.17, installed: 2020.12.5]
- chardet [required: >=3.0.2,<5, installed: 4.0.0]
- idna [required: >=2.5,<3, installed: 2.10]
- urllib3 [required: >=1.21.1,<1.27, installed: 1.26.3]
- grpcio [required: >=1.24.3, installed: 1.32.0]
- six [required: >=1.5.2, installed: 1.15.0]
- markdown [required: >=2.6.8, installed: 3.3.3]
- numpy [required: >=1.12.0, installed: 1.19.5]
- protobuf [required: >=3.6.0, installed: 3.14.0]
- six [required: >=1.9, installed: 1.15.0]
- requests [required: >=2.21.0,<3, installed: 2.25.1]
- certifi [required: >=2017.4.17, installed: 2020.12.5]
- chardet [required: >=3.0.2,<5, installed: 4.0.0]
- idna [required: >=2.5,<3, installed: 2.10]
- urllib3 [required: >=1.21.1,<1.27, installed: 1.26.3]
- setuptools [required: >=41.0.0, installed: 50.3.2]
- six [required: >=1.10.0, installed: 1.15.0]
- tensorboard-plugin-wit [required: >=1.6.0, installed: 1.8.0]
- werkzeug [required: >=0.11.15, installed: 1.0.1]
- wheel [required: >=0.26, installed: 0.36.2]
- tensorflow-estimator [required: >=2.4.0,<2.5.0, installed: 2.4.0]
- termcolor [required: ~=1.1.0, installed: 1.1.0]
- typing-extensions [required: ~=3.7.4, installed: 3.7.4.3]
- wheel [required: ~=0.35, installed: 0.36.2]
- wrapt [required: ~=1.12.1, installed: 1.12.1]
如果您遇到同样的问题并解决了,请告诉我如何解决此问题。谢谢你。
解决方案
我不知道你是否能够解决这个问题。但我遇到了同样的问题。一个简单的 pipenv clear 然后一个 pipenv 同步(从 pipfile 重新安装依赖项)有助于解决问题最终 pip lock 成功
推荐阅读
- php - PHP中的2路字符串加密 - 其中哪一个更安全?
- python - 在 Pandas 中计算字符串中单词的出现次数
- sql - 与其他列连接子查询
- javascript - 2D 平面图 JavaScript 库
- python - Python Selenium 问题:鼠标右键单击并拖动?
- sql - SQL 添加 Order By 子句会使查询运行得更快。需要解释
- opencv - 计算前向量并查看向量
- javascript - For-loop 仅运行 1 次 - JavaScript
- reactjs - 反应 - 写两次相同的测试第一次通过但不是第二次
- c# - Hangfire 没有以它被称为的方式执行作业?