阻止通过python setup.py develop将系统Python路径添加到virtualenv easy-install.pth

时间:2013-08-01 20:04:55

标签: python virtualenv setuptools setup.py distribute

当我尝试通过distributevirtualenv开发的Python包添加到python setup.py develop时,系统Python路径(我的Ubuntu 13.04系统上的/usr/lib/python2.7/dist-packages)是自动添加到virtualenv的easy-install.pth文件中。当开发中的包具有系统Python路径中可用的依赖项时,即使它也在virtualenv中安装并处于活动状态,这似乎也会发生。有没有办法阻止python setup.py develop在virtualenv中安装了必需的软件包时将系统Python路径添加到easy-install.pth?我想避免将系统Python路径添加到easy-install.pth,因为它混淆了virtualenv和系统Python路径(例如ipython)中可用的Python包的distribute入口点机制。

1 个答案:

答案 0 :(得分:0)

当你这样做时

python setup.py develop

用于运行setup.py的^ python不一定与虚拟环境相关联。您需要通过直接导航到虚拟环境中的python.exe并使用它来运行setup.py来确保运行virtualenv的python版本。

或者,您只需在脚本文件夹中调用activate.bat,它就会为您完成所有操作,确保不会使用虚拟环境之外的任何内容。

编辑如果您确定使用的是virtualenv python.exe,请确保在创建虚拟环境时使用了--no-site-packages标志

virtualenv --no-site-packages myEnv

edit2 --no-site-packages似乎是OP的问题