从本地索引的Pip安装失败

时间:2015-08-10 10:59:27

标签: python pip pip2pi

我正在尝试使用pip2pi创建的本地索引安装pip包。但我无法将这些软件包安装到虚拟环境中。基本上我只是按照pip2pi文档的步骤或this stackoverflow帖子中的第三个答案。

我开始从pip下载所需的软件包到本地目录:

#download package
pip2tgz /d/temp/packages pyyaml==3.11
#create index    
dir2pi /d/temp/packages

之后我为python创建了一个新的虚拟环境,并尝试安装包

#Create environment
virtualenv /d/temp/myenv
#Activate environment
source /d/temp/myenv/Scripts/activate
#Install pyyaml
pip install --index-url=file:///d/temp/packages/simple pyyaml==3.11

安装pyyaml(或任何其他包)总是会失败:

Collecting pyyaml==3.11
←[33m  DEPRECATION: Failed to find 'pyyaml' at file:///d/temp/packages/simple/pyyaml/.
It is suggested to upgrade your index to support normalized names as the
name in /simple/{name}.←[0m
←[31m  Cannot fetch index base URL file:///d/temp/packages/simple/←[0m
←[31m  Could not find a version that satisfies the requirement pyyaml==3.11 (from versions: )←[0m
←[31mNo matching distribution found for pyyaml==3.11←[0m
(myenv)

我只是想安装我下载的相同版本。我还尝试使用不同的标记,例如将--normalize-package-names传递给dir2pi或使用参数pip install--no-index调用--find-links /d/temp/packages/

注意:我正在使用gitbash中的Windows机器。 Pippip2pi已更新为最新版本(7.1.0和0.6.8)

1 个答案:

答案 0 :(得分:0)

虽然gitbash通常需要格式为

的路径
/d/temp/packages

在这种情况下,您必须以Windows样式

指定它
/d:/temp/packages

以下内容将按预期工作:

pip install --index-url=file:///d:/temp/packages/simple pyyaml==3.11