我尝试使用标记pip
通过--target
将几个模块安装到自定义目录中。
e.g:
pip3 install --target /custom/module/location /path/to/package1
一切正常。通过将/custom/module/location
添加到PYTHONPATH
,我可以使用我的package1
。
但是当我尝试安装package2
时需要package1
(位于/custom/module/location
)pip throws:
Could not find a version that satisfies the requirement ...
No matching distribution found ...
基本上:
PYTHONPATH=/custom/module/location
pip3 install --target /custom/module/location /path/to/package1
pip3 install --target /custom/module/location /path/to/package2
不起作用,但
pip3 install --user /path/to/package1
pip3 install --user /path/to/package2
工作得很好。有没有办法告诉点子查看/custom/module/location
以外的自定义位置PYTHONPATH
?
顺便说一下,使用第一种方法时,pip3 list
可以看到package1
答案 0 :(得分:4)
我认为target开关会像这样使用:
pip install --target=/home/path/of/directory package_name
您需要将/home/path/of/directory
添加到PYTHONPATH
才能从该位置实际使用它们。
您可以通过以下方式升级点数: -
pip install -U pip
答案 1 :(得分:2)
使用原始setuptools解决了这个问题。
首先添加PYTHONPATH
的路径,然后安装本地包。
EXTRAPATH=/home/path/of/directory/lib/python3.5/site-packages
export PYTHONPATH=$PYTHONPATH:$EXTRAPATH
cd /path/to/package1 && python setup.py --prefix=/home/path/of/directory
cd /path/to/package2 && python setup.py --prefix=/home/path/of/directory