我正在尝试使用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机器。
Pip
和pip2pi
已更新为最新版本(7.1.0和0.6.8)
答案 0 :(得分:0)
虽然gitbash通常需要格式为
的路径/d/temp/packages
在这种情况下,您必须以Windows样式
指定它/d:/temp/packages
以下内容将按预期工作:
pip install --index-url=file:///d:/temp/packages/simple pyyaml==3.11