Python make系统

2024-06-13 21:41:54 发布

您现在位置:Python中文网/ 问答频道 /正文

各种类似Python的系统有什么好处和问题?

注意我们在列表项的开头分别使用“(+)”和“(-)”表示优点和问题。

到目前为止我知道

  • buildit
    • 以前被称为pymake
    • (-)似乎过时了:最后一次发布是在2007年底
  • zc.buildout
    • (+)截至2010年7月20日当前有效
    • [sections]使用类似rc文件的语法
    • (-)python代码不能(?)易于集成到配置文件中。
    • 似乎非常重视使用.egg文件。
  • scons
    • (+)截至2010年7月20日当前有效
    • 配置文件是用纯Python编写的
    • (+)python代码可以很容易地集成到配置文件中
    • (-)?对配置文件使用Python可能需要额外的详细信息
  • waf
    • (+)?Mark说“好处是scons但速度更快”
    • 有什么坏处吗?为什么人们还在使用scons

Tags: 文件代码列表egg系统配置文件buildout语法
3条回答

大约1.5-2年前,当我使用waf时,它的文档非常稀少和糟糕,这大大限制了它的实用性。不过,我已经有一段时间没用过waf了,所以也许情况已经改变了。

以下是截至2015年5月31日,Python3的4个软件构建系统的状态。

waf的一个特点是它应该被复制到程序的源树中。Scons更像make,它只在系统上安装一次,然后在源代码树中只有一个数据文件(以python程序的形式)。

因此,Scons是在Ubuntu/Debian上打包的,waf不是。

在Scons中,处理依赖关系图或添加新概念进行派生的元编程是可能的,但有点困难。显然waf在这方面做得更好。

我已经愉快地使用Scons很多次了;对于我的下一个编译项目,我可能至少会尝试waf。

你可以阅读Samba's experience with waf。他们报告说,从autoconf到Waf可以正确设置rpaths,并通过每个程序只链接一次必要的对象文件来缩小二进制文件。

相关问题 更多 >