代码之家  ›  专栏  ›  技术社区  ›  Tim Post Samir J M Araujo

Autoconf和AutoTool的替代方案?[闭门]

  •  52
  • Tim Post Samir J M Araujo  · 技术社区  · 16 年前

    我是GNU的常客 Autotools (主要是 Autoconf 偶尔地 Libtool ).我正在做一个项目,可移植性将是一个关键点。。然而,团队的其他成员只是不喜欢与他们一起工作 m4 . 我得到了 this 在我的收件箱中,不是一个人,而是四个人:

    m4 is NOT lisp, dammit!

    9 回复  |  直到 8 年前
        1
  •  56
  •   Faheem Mitha    11 年前

    我正冒着被否决的机会,但我必须承认,不幸的是,自动工具没有真正的替代品。CMake、SCons和bjam都很好,但是,当涉及到严肃的工作时。。。很明显,自动工具的优越性并不是因为CMake不能做同样的事情,而是因为用它做起来要困难得多。

    例如,最受欢迎的自动工具替代品CMake有以下缺点:

    • 不支持卸载目标。发现你不能卸载你安装的程序是很不愉快的。
    • 没有自动生成 二者都 共享和静态库。
    • 文件是 有限和糟糕。

    等等

    还有很多其他的观点。不幸的是,没有真正高质量的自动工具替代品。另一方面,如果您在Windows上开发 对于VisualStudio,则不能使用自动工具,需要选择提供此类工具的CMake。

        2
  •  39
  •   epatel    16 年前

    我听说了一些好消息 CMake 它试图解决同样的问题。 Here 这是维基百科的文章

        3
  •  39
  •   Greg Hewgill    16 年前

    我在这方面很成功 SCons . 它是用Python构建的,构建脚本实际上是Python脚本本身,这提供了很大的表达能力。从网站:

    SCons是一种开源软件构建工具,它是一种新一代构建工具。可以将SCons视为经典的改进的跨平台替代品 Make 具有集成功能的实用程序,类似于 autoconf/automake 和编译器缓存,例如 ccache

        4
  •  19
  •   raimue    16 年前

    有许多不同的替代Makefile生成器和构建系统:

    也可用,但不严格针对C/C++:

    但在列出所有这些之后,autotools的最大优点是不需要终端用户有任何其他依赖关系。配置脚本只由开发人员生成一次,并且不需要在用户端执行任何特殊操作,因为它是一个shell脚本。在任何人都可以构建您的源代码之前,必须安装上面列出的工具,而且这些工具本身可能具有依赖性。

        5
  •  16
  •   naufraghi    11 年前

    简单地使用一下怎么样 Make pkg-config

    这是一个 Makefile template 让你开始。

        6
  •  4
  •   citrin    13 年前

    再来一次自动更换- mk-configure . 可以找到文档 here

        7
  •  3
  •   shodanex    16 年前

        8
  •  1
  •   Pete Kirkham    16 年前

    Mozilla正在创建一个python版本的make- pymake -这可能支持跨平台使用。

        9
  •  1
  •   alex alex    16 年前

    terp . 它包括一个可移植的C++编译器任务,它可以与许多平台上的许多C++编译器一起工作。