вторник, 5 октября 2010 г.

Установка gevent в FreeBSD

Один из моих сайтов на Zope2 использует в качестве WSGI сервера стандартный сервер из Paste. Я решил заменить его на более быстрый вариант - gevent.
Только вот незадача - setup.py из пакета gevent написан без учёта особеностей FreeBSD. В результате инсталятор не находил libevent, который необходим для компиляции расширеня для питона. Кроме того, setup.py содержал в себе вызов функции, которая пересобирала С-расширение в случае изменения исходников. При этом происходил прямой вызов компилятора cython, который в FreeBSD не доступен как системная команда (расположен в другой папке), и у обычных пользователей даже нету прав на его вызов.
Единственное подходящее в моём случае решение - пропатчить setup.py.
Написал о косяке в русскую группу gevent, надеюсь мой патч примут.