Python 如何加快lxml的构建/安装速度?

Python 如何加快lxml的构建/安装速度?,python,compilation,lxml,Python,Compilation,Lxml,我们将Hudson CI用于Python项目的out Continuous Integration server,所有这些项目都使用Buildout来管理依赖关系。几乎我们所有的项目都使用lxml,由于构建,必须在每次测试运行期间构建/安装它,并且因为它花费的时间太长,因此减少了我们每天可以运行的构建数量 使用Buildout时,是否有任何方法可以加快构建lxml?也许可以设置一些环境变量来帮助构建使用服务器上的两个核心?或者减少优化工作量的方法?您可以创建一个构建默认文件,并定义一个鸡蛋目录,

我们将Hudson CI用于Python项目的out Continuous Integration server,所有这些项目都使用Buildout来管理依赖关系。几乎我们所有的项目都使用
lxml
,由于构建,必须在每次测试运行期间构建/安装它,并且因为它花费的时间太长,因此减少了我们每天可以运行的构建数量


使用Buildout时,是否有任何方法可以加快构建
lxml
?也许可以设置一些环境变量来帮助构建使用服务器上的两个核心?或者减少优化工作量的方法?

您可以创建一个构建默认文件,并定义一个鸡蛋目录,以便在多个构建之间共享鸡蛋


这篇文章很好地总结了这一点:

我的解决方案是自己创建一个鸡蛋,并用我的构建控制鸡蛋的版本。每次需要升级lxml时,我都会重新创建鸡蛋。通过将
import setuptools
放入其
setup.py
的顶部,然后说
Python setup.py bdist_egg
,几乎可以创建任何Python项目的二进制egg。只要安装egg的机器在二进制方面大致相似(比如所有机器都是相同的Linux发行版),您就不会有太多麻烦。如果你不想让你的egg依赖于安装在盒子上的libxml,请阅读关于使用“static dep”构建lxml的文章。唉,提问者的问题不是下载egg,而是编译一个.tar.gz。我不同意。据我所知,问题在于安装lxml,这涉及到编译C扩展。FWIW,我有一个以lxml作为依赖项的项目的构建。lxml只构建一次,需要相当长的时间,然后存储在egg缓存中。