每当我运行pip
来安装 Flask 软件包(如 Ubuntu 16.04 中的 virtualenv
(时,都会收到此错误:
pip install virtualenv
Requirement already satisfied: virtualenv in ./.local/lib/python3.5/site-packages (16.1.0)
No metadata found in ./.local/lib/python3.5/site-packages
Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: '/usr/.local/lib/python3.5/site-packages/virtualenv-16.1.0.dist-info/METADATA'
这是我的pip和python版本:
pip --version
pip 19.0.1 from /usr/.local/lib/python3.5/site-packages/pip (python 3.5)
python3 --version
Python 3.6.8
我已经尝试了几乎所有从互联网上得到的东西来解决这个问题,例如:
/usr/.local/bin/pip install virtualenv
但我仍然收到同样的错误。
我还进入dist文件夹以复制带有元数据的metadata.json,但里面没有metadata.json文件。
cd /usr/.local/lib/python3.5/site-packages/virtualenv-16.1.0.dist-info/
cp metadata.json METADATA
cp: cannot stat 'metadata.json': No such file or directory
请帮助我,我被这个问题困住了好几天。谢谢!
我遇到了同样的问题
ERROR: Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: '/root/anaconda3/lib/python3.6/site-packages/tornado-6.0.4.dist-info/METADATA
然后我cd /root/anaconda3/lib/python3.6/site-packages/tornado-6.0.4.dist-info/ && ls
DESCRIPTION.rst LICENSE.txt metadata.json
最后,我做了cp metadata.json METADATA
解决了问题。也许这对你有帮助。
我最近遇到了同样的问题。
Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: '~/.local/lib/python3.7/site-packages/pip-19.0.1.dist-info/METADATA'
在文件夹中
~/.local/lib/python3.7/site-packages/pip-19.0.1.dist-info/
我找到了另一个名为 pip-19.0.1.dist-info
的,最后一个包含pip
所需的所有文件。
我刚刚用了
cd ~/.local/lib/python3.7/site-packages/pip-19.0.1.dist-info/
cp -r ./pip-19.0.1.dist-info/* ./
rm -r ./pip-19.0.1.dist-info
显然,您需要用自己的版本替换python
版本,并检查文件是否
entry_points.txt INSTALLER LICENSE.txt METADATA RECORD top_level.txt WHEEL
在这里。
也许它会帮助你,运气。
我只是用不同的包遇到了这个问题,使用 Python 3.6.5 和 pip 19.2.3。 我对在这里使用解决方案(以及类似的 SO 问题(犹豫不决,所以我只是尝试了以下内容,它解决了问题:
pip install --force-reinstall package_with_metadata_issue
请注意,我的情况是抱怨black
包,这是我尝试安装的其他东西的依赖项(使用简单的pip install other_package
(。Black已经安装并在我的系统上工作了一段时间,所以目前还不清楚它是如何进入错误状态的,或者pip发生了什么变化,以至于它无法处理包的状态。
具体来说,OP可以尝试:
pip install --force-reinstall virtualenv
尽管似乎这里的许多其他人对pip本身有问题,所以这可能只是在踢罐子,直到pip处于良好状态。
我认为您的错误的根源是您pip
配置为与 Python3.5 一起使用(并在其特定的 Python 路径中查找元数据(,而您的 Python 版本是 3.6.8
在我看来,Python 3 中的虚拟环境通过使用内置venv
变得更加简单。此外,你的Python和Flask版本应该重合,这是在这里,而不是这样。
我建议您采取以下步骤
- 使用 创建新的虚拟环境
python3 -m venv /path/to/new/virtual/environment
- 通过以下方式激活虚拟环境
cd /path/to/new/virtual/environment
source env/bin/activate
你现在有一个隔离的、干净的环境,你只有一个版本的 Python。
运行
pip install --upgrade pip
将虚拟环境 pip 升级到与您的 Python 版本兼容的版本。运行
pip install flask
,并从头开始安装整个堆栈,以便库和 Python 可执行版本保持一致。
我得到了同样的错误
Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: '/home/vagrant/.local/lib/python3.7/site-packages/pip-18.1.dist-info/RECORD'
似乎/usr/bin/pip 和/home/vagrant/.local/lib/python3.7/之间存在冲突。
我的解决方案是避免错误。
- 点冻结>要求.txt
- 我删除了/home/user/.local/lib/python3.7 目录
- 须藤点安装 --升级点子
- pip install -r 要求.txt --user
- 修复了它
conda install -c conda-forge requests
解决了我的问题。当然,您需要重新安装对您有问题的软件包。使用 pip 重新安装它对我不起作用。
如果你使用python,请执行"pip install cython",如果使用python3,则执行"pip3 install cython"。 我尝试了很多不同的方式,这最终对我有用。
检查您的实际错误消息,我的错误消息是" 注意:此错误源自子进程,可能不是 pip 的问题。错误:旧版安装失败
× 尝试安装软件包时遇到错误。╰─> cytoolz
试试这个,
!pip install cython
和
!pip install --force-reinstall virtualenv
为我工作。
我在colab中遇到了同样的问题
在使用Google Colab时遇到了这个问题。 事实证明,您只需要按照他们的说明进行操作,并事先安装一些东西apt
:
sudo apt-get install build-essential swig python3-dev