2010-07-20 75 views
16

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

我们正在使用的denotations“(+)”和“( - )”分别在列表项目的开头来指示好处和问题。

到目前为止,我所知道的

  • buildit
    • 以前被称为pymake
    • ( - )似乎obsolescing:最后一个版本是在2007年年底
  • zc.buildout
    • (+)当前活动作为2010-07-20
    • 使用具有RC-文件的语法[sections]
    • ( - )(?) Python代码不能容易地集成到配置文件。
    • 似乎很重视与.egg文件的合作。
  • scons
    • (+)当前活动作为2010-07-20
    • 配置文件被写在纯Python
    • (+) Python代码可以容易地集成进入配置文件
    • ( - )?的配置文件使用Python的可能需要额外的冗长
  • waf
    • (+)?Mark说“好处为scons但更快”
    • 有什么缺点?为什么人们仍在使用scons
+0

“额外冗长”?它肯定比任何选择都更清晰和更精确。这个问题有什么意义? – 2010-07-20 20:12:31

+0

也许作为python'make'工具信息的储存库(至少这是考虑到CW状态的我的推测) – 2010-07-20 20:15:05

+0

我只是对那里的选项进行了一些研究,并提出了这个列表。我想知道a)是否有更多的选择,以及b)如果这里列出的选项还有其他一些值得注意的方面。 – intuited 2010-07-21 04:45:47

回答

0

当我大约1.5-2年前使用WAF,它有真正的稀疏和差劲的文档,大大限制了它的实用性。尽管如此,我还没有使用waf,所以也许这种情况已经改变了。

+0

现在有一个关于waf的书,在https://waf.io/book/上有很多例子。 – Chelmite 2015-06-01 15:37:34

3

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

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

在Scons中可能会做一些操作依赖关系图或添加新概念以进行派生的元编程。显然waf更好。

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

你可以阅读关于Samba's experience with waf。他们报告说,从autoconf到Waf通过正确地链接必要的目标文件每个程序一次就可以正确设置rpath并缩小二进制文件。

1

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