pip找不到所需的版本

问题描述 投票:0回答:1

我最近完成了一个在新的conda环境中工作的项目。在开发过程中,我根据需要下载了软件包。我使用pip freeze > requirements.txt创建了requirements.txt文件。现在,我正在尝试在Web服务器上重现该环境。该Web服务器自动调用pip install -r requirements.txt以下载所需的软件包。但是,此过程在许多依赖项上都失败,并带有

错误:找不到满足要求的版本...

据我所知,requirements.txt文件中列出的版本号比PyPI上的版本号高得多。

例如,requirements.txt文件要求mkl-fft == 1.0.15(对NumPy的优化),但是PyPI仅列出版本1.0.6mkl-fft github的版本最高为1.1。

我认为这是导致“找不到满足...的版本”错误的差异。谁能确认?

我可以删除版本号,并且pip将下载它可以找到的最新版本,但是我有5-6个这样的软件包。假设其他软件包期望使用这些版本(例如numpy与mkl-fft配合使用),则版本不匹配会导致复制环境中的运行时失败。

是否有修补程序可帮助pip安装获取指定的版本?

python pip freeze pypi
1个回答
1
投票

的确,conda提供的(某些)软件包似乎比pypi的软件包具有更高的版本号。例如,使用mkl-fft:

[如果使用conda创建了开发环境,则可能还应将生产环境也基于conda-使用conda list --export创建需求,并使用conda create --name <envname> --file requirements.txt复制环境。

© www.soinside.com 2019 - 2024. All rights reserved.