Как я могу ускорить сборку / установку lxml? - PullRequest
0 голосов
/ 30 ноября 2010

Мы используем Hudson-CI для сервера Continuous Integration для проектов Python, каждый из которых использует Buildout для управления зависимостями.Почти во всех наших проектах используется lxml, который из-за Buildout должен быть собран / установлен во время каждого запуска теста, а поскольку он занимает так много времени, он уменьшает количество сборок, которые мы можем выполнять в день.любой способ ускорить сборку lxml при использовании Buildout?Может быть, некоторые переменные среды могут быть установлены, чтобы помочь сборке использовать оба ядра на сервере?Или что-то для уменьшения объема выполненной оптимизации?

Ответы [ 2 ]

1 голос
/ 01 декабря 2010

Мое решение состоит в том, чтобы создать яйцо самостоятельно и держать его под контролем с помощью моей сборки.Я воссоздаю яйцо каждый раз, когда мне нужно обновить lxml.Вы почти всегда можете создать двоичное яйцо любого проекта Python, бросив import setuptools в верхнюю часть его setup.py и затем сказав python setup.py bdist_egg.И до тех пор, пока машины, на которых вы устанавливаете яйцо, примерно одинаковы в двоичном формате (например, все они - один и тот же дистрибутив Linux), у вас не должно быть страшных проблем.Читайте о сборке lxml со "static deps", как их называют, если вы хотите, чтобы ваше яйцо не зависело от установки libxml на коробке.

0 голосов
/ 01 декабря 2010

Вы можете создать файл значений по умолчанию для сборки и определить каталог eggs для совместного использования яиц между несколькими сборками.

Это сообщение хорошо подводит итог: http://plone.org/documentation/manual/developer-manual/managing-projects-with-buildout/creating-a-buildout-defaults-file

...