У вас есть distribute
ответвление setuptools
, установленное в пакетах вашего сайта, но ваш bootstrap.py
пытается установить buildout
2.2.0, в котором используется новое яйцо merged setuptools
0.7 или более поздней версии.
Вилка distribute
проекта setuptools
была снова объединена с проектом setuptools
, и переход вызывает некоторую боль.
Ваши варианты:
Скажите bootstrap
использовать более раннюю версию zc.buildout
Запустите bootstrap.py
с параметром -v
, заставив его придерживаться определенной, более ранней версии:
$ bin/python bootstrap.py -d -v 2.1.1
Версия сборки 2.1.1 не будет обновляться до версии 2.2 или новее и работает с вашим distribute
-поставляемым setuptools
яйцом.
Удалите старое яйцо distribute
Вручную удалите все файлы distribute*
, pkg_resources.py*
и setuptools*
из каталога site-packages
:
$ rm -rf /home/oomsys/demobrun/lib/python2.7/site-packages/setuptools*
$ rm -rf /home/oomsys/demobrun/lib/python2.7/site-packages/distribute*
$ rm -rf /home/oomsys/demobrun/lib/python2.7/site-packages/pkg_resources.py*
и (необязательно) переустановите setuptools
из последней версии ez_setup.py
; текущая версия – 0.9.6, а setuptools
PyPI-страница содержит ссылку на < a href="http://cdn.bitbucket.org/pypa/setuptools/downloads/ez_setup.py" rel="noreferrer">эта ez_setup.py
версия.
Вам также потребуется обновить скрипт bootstrap.py
, см. ниже.
Используйте недавний virtualenv
Версия 1.9 или новее virtualenv
(выпущена в марте 2013 г.) позволяет создать виртуальную среду без яйца setuptools
с помощью переключателя --no-setuptools
:
$ virtualenv --no-setuptools buildout_env
Используйте это, чтобы создать виртуальный env python для запуска вашего bootstrap.py
. Вам все еще нужно обновить свой bootstrap.py
. Смотри ниже.
Обновите свой bootstrap.py
.
Для zc.buildout
версии 2.2.0 и выше скрипт bootstrap.py
был обновлен для загрузки setuptools
версии без разветвления. Получите новую копию по адресу из github (ссылка на версию 2 ветки), замените им свой старый bootstrap.py
и снова загрузитесь.
Убедитесь, что вы удалили старое разветвленное действительно-distribute
-но-претендующее-на-40_ яйцо, или запустите виртуальный env python, у которого нет этого яйца. См. выше.
person
Martijn Pieters
schedule
11.07.2013