Pip 找不到元数据文件 - 环境错误



每当我运行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

最新更新