不能在OSX上使用Python virtualenv?

时间:2016-01-08 11:00:12

标签: python macos pip virtualenv

我在OSX上遇到Python virtualenv问题。在创建了virtualenv并执行了pip freeze后,它说它已经安装了很多东西,这实际上是我在主要的pip安装上安装的东西(在virtualenv之外):

kramer65$ virtualenv venv
New python executable in venv/bin/python
Installing setuptools, pip, wheel...done.
kramer65$ source venv/bin/activate
(venv)kramer65$ which pip
/Users/kramer65/repos/venv/bin/pip
(venv)kramer65$ pip freeze
apns==2.0.1
APScheduler==3.0.4
argh==0.26.1
Babel==1.3
beautifulsoup4==4.4.1
etc.
etc.

我有virtualenv版本13.1.2,我认为这是最新版本。

所以为了确保我尝试使用直接链接调用pip,但结果相同:

(venv)kramer65$ ./venv/bin/pip freeze
apns==2.0.1
APScheduler==3.0.4
etc.
etc.

甚至通过使用virtualenv python调用pip:

(venv)kramer65$ ./venv/bin/python venv/bin/pip freeze
apns==2.0.1
APScheduler==3.0.4
etc.
etc.

我也卸载并重新安装了virtualenv,但结果相同。有谁知道为什么我似乎无法调用已安装的virtualenv的Python?欢迎所有提示!

[编辑]

根据@sushant的建议,我尝试使用--no-site-packages

kramer65$ virtualenv --no-site-packages venv
New python executable in venv/bin/python
Installing setuptools, pip, wheel...done.
kramer65$ source venv/bin/activate
(venv)kramer65$ pip freeze
apns==2.0.1
APScheduler==3.0.4
argh==0.26.1
Babel==1.3
beautifulsoup4==4.4.1
etc.
etc.
(venv)kramer65$ which pip
/Users/kramer65/repos/venv/bin/pip

1 个答案:

答案 0 :(得分:0)

问题是您的virtualenv安装也包含主site-packages

如果你这样调用它,

virtualenv将不会包含site-packages

virtualenv --no-site-packages venv