pip未安装现有软件包

2024-05-19 02:28:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用pip安装spacy 2.1.0。但是,我遇到了一个问题,我收到一条错误消息,指出

ERROR: Could not find a version that satisfies the requirement spacy==2.1.0 
(from versions: 0.31, 0.32, 0.33, 0.40, 0.51, 0.52, 0.60, 0.61, 0.62, 0.63, 0.64, 0.65, 0.67, 0.68, 0.70, 
0.80, 0.81, 0.82, 0.83, 0.84, 0.85, 0.86, 0.87, 0.88, 0.89, 0.90, 0.91, 0.92, 0.93, 0.94, 0.95, 0.97, 
0.98, 0.99, 0.100.0, 0.100.1, 0.100.2, 0.100.3, 0.100.4, 0.100.5, 0.100.6, 0.100.7, 0.101.0, 1.0.1, 
1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.1.0, 1.1.1, 1.1.2, 1.2.0, 1.3.0, 1.4.0, 1.5.0, 1.5.1, 1.6.0, 
1.7.0, 1.7.1, 1.7.2, 1.7.3, 1.7.5, 1.8.0, 1.8.1, 1.8.2, 1.9.0, 1.10.0, 1.10.1, 2.0.0, 
2.0.1.dev0, 2.0.1, 2.0.2.dev0, 2.0.2, 2.0.3.dev0, 2.0.3, 2.0.4.dev0, 2.0.4, 2.0.5.dev0, 2.0.5, 
2.0.6.dev0, 2.0.6, 2.0.7, 2.0.8, 2.0.9, 2.0.10.dev0, 2.0.10, 2.0.11.dev0, 2.0.11, 2.0.12.dev0, 
2.0.12.dev1, 2.0.12, 2.0.13.dev0, 2.0.13.dev1, 2.0.13.dev2, 2.0.13.dev4, 2.0.13, 2.0.14.dev0, 
2.0.14.dev1, 2.0.15, 2.0.16.dev0, 2.0.16, 2.0.17.dev0, 2.0.17.dev1, 2.0.17, 2.0.18.dev0, 
2.0.18.dev1, 2.0.18, 2.1.0, 2.1.1.dev0, 2.1.1, 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.1.6, 2.1.7.dev0, 
2.1.7, 2.1.8, 2.1.9, 2.2.0.dev10, 2.2.0.dev11, 2.2.0.dev13, 2.2.0.dev15, 2.2.0.dev17, 
2.2.0.dev18, 2.2.0.dev19, 2.2.0, 2.2.1, 2.2.2.dev0, 2.2.2.dev4, 2.2.2, 2.2.3.dev0, 2.2.3, 2.2.4, 
2.3.0.dev1, 2.3.0, 2.3.1, 2.3.2, 2.3.3.dev0, 2.3.3, 2.3.4, 2.3.5, 3.0.0, 3.0.1.dev0, 3.0.1, 
3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.0.6)
ERROR: No matching distribution found for spacy==2.1.0

我觉得这很奇怪,因为它说它搜索了2.1.0版(消息的第11行),但仍然没有检测到它

我的pip版本有最新的更新。我在虚拟环境中工作。我在macOS Big Sur 11.1版上。我正在使用Python 3.8.3。要重现错误,请使用最新版本的pip 21.1设置一个清除的虚拟环境,运行pip install spacy==2.1.0。然后,等待一段时间后,会弹出错误消息

我不确定为什么这条消息会发生,因为它知道spacy 2.1.0存在。我在其他软件包中也遇到过这个错误,比如scikit-learn。我还尝试直接从tar.gz文件安装,但没有成功。然后,我得到一个错误,它exited with status 1。尽管如此,如果你们对我如何成功安装这个版本的spacy有任何解决方案,我将不胜感激

另外,我对stackoverflow有点陌生,所以如果我的邮件中缺少任何对您有帮助的内容,请随时告诉我。谢谢:D


Tags: pip版本消息thatdev1spacyversion错误
2条回答

@RMPR的答案通常是一个好建议,但我怀疑您仍然会遇到所需版本的依赖项blis的问题,该依赖项有一些过时的/hacky OS X设置,这可能是原始安装错误的根源

运行以下命令,查看结尾处是否有关于不匹配的MACOSX_DEPLOYMENT_TARGET版本的错误(这需要几分钟的时间;您可以在看到此错误后立即停止该命令):

python -m pip install blis==0.2.4

错误如下所示:

  error: $MACOSX_DEPLOYMENT_TARGET mismatch: now "10.7" but "10.14.6" during configure
                      
  ERROR: Failed building wheel for blis

10.7是来自blis==0.2.4的过时硬编码默认值,因此请从错误消息中将其设置为正确的值。在我的例子中,这是有效的:

MACOSX_DEPLOYMENT_TARGET="10.14.6" python -m pip install spacy==2.1.0

(注意:我只能在M1上的仿真模式下测试此功能。)

查看wheels on PyPI似乎目前没有macosx 11(大苏尔)的构建,最近的是this one,您可以使用以下方法安装:

pip install https://files.pythonhosted.org/packages/9a/97/4cac1c4ac95af031b627968120bf273193e2f2134ff01b069cf630414272/spacy-3.0.6-cp38-cp38-macosx_10_9_x86_64.whl

但您应该会收到一条错误消息,说明平台不支持控制盘。这可能就是为什么即使pip列出了库的版本,您仍然会收到错误消息。您必须降级到受支持的macOS版本或install from source(下面是关于如何安装v2.1.0的说明)

您需要首先安装最新版本的XCode,包括“命令行工具”,然后:

git clone https://github.com/explosion/spaCy
cd spaCy

python -m venv .env
source .env/bin/activate

# make sure you are using the latest pip
python -m pip install -U pip setuptools wheel

# checkout to the desired version of spaCy
git checkout v2.1.0

pip install -r requirements.txt
pip install  no-build-isolation  editable .

相关问题 更多 >

    热门问题