强制使用 virtualenv pip
Force virtualenv pip to be used
运行 Ubuntu 16.10 与 Python 2.7.12+(默认)和 virtualenv 15.0.3 (sudo -H pip install virtualenv
)。我做错了什么?
$ virtualenv a && . "$_"/bin/activate && pip --version
New python executable in /tmp/a/bin/python
Installing setuptools, pip, wheel...done.
pip 9.0.0 from /usr/local/lib/python2.7/dist-packages (python 2.7)
$ /tmp/a/bin/pip --version
pip 9.0.0 from /usr/local/lib/python2.7/dist-packages (python 2.7)
$ /tmp/a/bin/python -c 'from pip import __file__; print __file__'
/usr/local/lib/python2.7/dist-packages/pip/__init__.pyc
你试过打电话给 $venv/bin/python $venv/lib/site-packages/pip/__main__.py
吗?那应该有用。
要找出调用错误 pip 的原因,您应该查看:
$PATH
,什么顺序,which pip
和which python
也有帮助
sys.path
,这是什么顺序,/usr/local/lib/
是否出现在venv 之前
$PYTHONPATH
,影响 sys.path
- venv 中可能的符号链接,它可能指向 venv 之外
运行 Ubuntu 16.10 与 Python 2.7.12+(默认)和 virtualenv 15.0.3 (sudo -H pip install virtualenv
)。我做错了什么?
$ virtualenv a && . "$_"/bin/activate && pip --version
New python executable in /tmp/a/bin/python
Installing setuptools, pip, wheel...done.
pip 9.0.0 from /usr/local/lib/python2.7/dist-packages (python 2.7)
$ /tmp/a/bin/pip --version
pip 9.0.0 from /usr/local/lib/python2.7/dist-packages (python 2.7)
$ /tmp/a/bin/python -c 'from pip import __file__; print __file__'
/usr/local/lib/python2.7/dist-packages/pip/__init__.pyc
你试过打电话给 $venv/bin/python $venv/lib/site-packages/pip/__main__.py
吗?那应该有用。
要找出调用错误 pip 的原因,您应该查看:
$PATH
,什么顺序,which pip
和which python
也有帮助sys.path
,这是什么顺序,/usr/local/lib/
是否出现在venv 之前
$PYTHONPATH
,影响sys.path
- venv 中可能的符号链接,它可能指向 venv 之外