我是 GNU Autotools(主要是Autoconf,偶尔是Libtool)的一个非常频繁的用户。我正在从事一个项目,其中可移植性将成为一个症结。然而,团队的其他成员只是不习惯使用m4。我在收件箱中收到的不是一个人,而是四个人:
无论如何,也许有人可以推荐一些基于 Python 或 PHP 的东西?我正在研究一棵更大的树的 C 端;我可以肯定 Python 或 PHP 5 都会出现,因为它们是先决条件。
我冒着被否决的机会,但我必须承认,不幸的是,没有真正的自动工具替代品。CMake、SCons、bjam 都不错,但是,当涉及到严肃的工作时……很明显,自动工具更胜一筹,不是因为 CMake 不能做同样的事情,而是因为用它来做这件事要困难得多.
例如,最流行的自动工具替代品 CMake 有以下缺点:
等等。
还有很多其他的点。不幸的是,没有真正高质量的自动工具替代品。另一方面,如果您在 Windows和Visual Studio 上进行开发,则不能使用自动工具,您需要选择提供此类工具的 CMake。
我在SCons上取得了很好的成功。它是用 Python 构建的,构建脚本实际上是 Python 脚本本身,它具有很强的表现力。从网站:
SCons 是一种开源软件构建工具,即下一代构建工具。将 SCons 视为经典
Make
实用程序的改进的跨平台替代品,其集成功能类似于autoconf/automake
编译器缓存(如ccache
. 简而言之,SCons 是一种更简单、更可靠、更快速的软件构建方式。
另一个自动* 替换 - mk-configure。文档可以在这里找到
我看过 CMake,除非您进行交叉编译,否则它看起来是一个不错的选择。如果你在做原生编译,你应该试试
Mozilla 正在创建一个 python 版本的 make - pymake - 它可能支持跨平台使用。
对于从 ANT 或 maven 构建 C/C++ 软件,您可能对terp感兴趣。它包括一个可移植的 C++ 编译器任务,可与许多平台上的许多 C++ 编译器一起使用。