1

の代わりにdistribute_setup.py使用するパッケージがあるので、次のようにします。distributesetuptools

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にdistributeをインストールする4)setuptoolsimportsetupから

setup(... install_requires = ['distribute'])

于 2012-09-24T22:00:49.113 に答える