1

我有一个包用来distribute_setup.py代替distribute-setuptools所以我有:

from distribute_setup import use_setuptools
use_setuptools()

在包setup.py文件的顶部。为了演示这个问题,我创建了一个简单的setup.py文件:

from distribute_setup import use_setuptools
use_setuptools()

import setuptools
print "PATH TO SETUPTOOLS", setuptools.__file__

如果我现在创建一个虚拟环境virtualenv,并尝试从虚拟环境运行python setup.pypython我得到:

PATH TO SETUPTOOLS /Users/tom/tmp/debug/distribute-0.6.28-py2.7.egg/setuptools/__init__.pyc

这是我所期望的——即实际上是这样distribute。但是,如果我现在尝试从虚拟环境中使用 pip 安装“包”:

pip install -e git://github.com/astrofrog/test_pip_distribute.git#egg=test_pip_distribute

我得到:

PATH TO SETUPTOOLS /Users/tom/tmp/testenv/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/__init__.py

这是“香草”设置工具。为什么会这样?distribute_setup.py玩得不好吗pip

可以在此处找到测试“包”。

4

1 回答 1

0

Virtualenv 默认安装 setuptools,默认忽略全局包。

我没有测试任何东西,但尝试做:1)virtualenv testenv --distribute 2)virtualenv testenv --global-site-packages 3)在 virtualenv 中安装分发 4)从 setuptools import setup

设置(... install_requires=['distribute'] )

于 2012-09-24T22:00:49.113 回答