什么是一些替代办法 linux/freebsd?

有帮助吗?

解决方案

我喜欢 SCons的。它以这样的方式,每一个构建脚本(一SConstruct文件)也是语法上有效的Python程序构成。所以,你可以建立任何Python逻辑到您的构建脚本,如果你需要。

它也比make快得多,并自动计算多种依赖。

其他提示

我的第一个问题是,什么是观众。这是建立在企业内部,只有你的团队将建立软件?如果是这样,探索一些已经出现的选项。如果是这样的东西,别人会建设,无论是与化妆棒,或使用创建的makefile的工具,把那些。我们使用autoconf和automake的Linux和其它UNIX平台。在我看来,你需要一个很好的理由做其他的东西比配置;使;使安装。升压都有自己的工具(果酱的修改版本),这让我很烦,每次我需要尝试,并得到它来编译一个不寻常的机器上。

cmakeimake 都是建立公用事业,尽管Imake不再保留。Cmake也是交叉平台,可用于Windows。

如果你到爪哇, 蚂蚁 是一个建立工具旨在Java(其中并没有真正发挥很好作).

巨魔的科技做一个工具,称为 qmake, 它们用来构建夸脱它的工作通过产生生成文件-巨魔需要一个工具,以支持一个交叉平台,建立这样你仍然需要另一个让的效用。

Automake:p通常在大多数使用linux的应用程序的分布,但它提供了更多的工作于一个生成文件,但是更好的结果 http://www.gnu.org/software/automake/

http://www.openismus.com/documents/linux/automake/automake.shtml <-不错的解释如何使用automake和autoconf

如果你正在寻找的东西完全不同,有蚂蚁。我不是在它自己感兴趣的,但它确实提供了一些便携性的优势(在UNIX外壳不依赖,等等。)

我听说过好东西果酱

OMake 是为C / C构建工具++,OCaml中,并用自动依赖性乳胶分析。它可以轻松地建立了多个目录的项目,它发现基于MD5总和,而不是时间戳的变化。它也有它可以在后台运行,构建项目,只要一个文件被修改的模式。一般情况下,它需要较少的代码来构建常见类型的项目(C / C ++或者Ocaml程序和库),比化妆一样。我还没有尝试过的更大的项目。

请注意,如果你想在OCaml中编程,这个工具是非常有用的,因为OCaml的连接需要编译的模块出现在依赖顺序在命令行上,并找出这个顺序,每次有新的变化是不平凡的。

我使用的CMake更多我的项目,包括基于移植的人一些自动工具,我可以说,它的工作非常出色。它主要适于C / C ++跨平台的项目。

我的工作项目继承使用Cons代替Make一些代码(不要混淆与格雷格Hewgill的回答SCons)。

Cons被写入在Perl,很像SCons被写入在Python。它自动管理的依赖关系,并且可以使用任何Perl代码构建脚本内部来处理复杂的编译序列。

主要缺点(其主要原因对不起我的项目使用它)是Cons没有做平行建立在make -j的风格。如果你正在编译一个数字,不依赖于彼此Cons将编译它们一次一个,而make -j将并行,如果你有你的机器上的多个核心和线程,这是伟大编译它们的文件。

另一个使跨平台构建是kmakekbuild的一部分,在其自己的话:的kbuild是用于编写简单生成文件为复杂的任务生成文件框架)。它是GNU make的增强版本。它是由VirtualBox的人开发的。他们用它来建立自己的VirtualBox的产品在Windows,Linux,MacOS和Solaris操作系统。漂亮的便携!

请参阅 http://svn.netlabs.org/kbuild 获得的信息。

WAF 是一个有趣的选择。用Python编写的,它允许你写你的构建逻辑普通的Python。并行编译+半自动魔基于签名的依赖跟踪的工作还算不错。这是所谓的跨平台(即知道怎么做构建在Windows上),但我还没有尝试过的。

它有一个相当陡峭的学习曲线,但它也带有“的WAF书」与过程提供帮助。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top