Autoconf 和 A​​utotools 的替代品? [关闭]

2024-02-18

我是 GNU 的频繁用户自动工具 http://en.wikipedia.org/wiki/GNU_build_system(大多Autoconf http://en.wikipedia.org/wiki/Autoconf, 偶尔Libtool http://en.wikipedia.org/wiki/GNU_Libtool)。我正在开发一个项目,可移植性将成为一个症结所在。然而,团队的其他成员只是不愿意与m4 http://en.wikipedia.org/wiki/M4_%28computer_language%29#Free_software_implementations. I got this http://xkcd.com/297/在我的收件箱中,不是一个人,而是四个人:

不管怎样,也许有人可以推荐一些基于 Python 或 PHP 的东西?我正在一棵更大的树的 C 端工作;我可以确定 Python 或 PHP 5 将会存在,因为它们是先决条件。


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

例如,最流行的自动工具替代品 CMake 具有以下缺点:

  • 不支持 gettext。当您需要管理大量翻译和翻译后的源代码时,这可能是一个真正的问题。
  • 不支持卸载目标。发现无法卸载所安装的程序是非常不愉快的。
  • 没有自动构建both共享库和静态库。
  • 文档是very有限且糟糕。

等等。

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Autoconf 和 A​​utotools 的替代品? [关闭] 的相关文章

随机推荐

  • 如何使非英语网址在 next.js 中工作?

    如何使非英语 URL 与 next js ssr client 一起使用 欢迎任何想法 重写等 前段时间重写有助于解决这个问题 但在一些更新之后它停止工作 这是我的尝试fix this https github com zeit next
  • 从 listView 中删除标题

    我在尝试从文件中删除标头时遇到一些问题listView 起初我使用addHeaderView 添加它 但是当我更改为另一个布局时我希望它消失但是removeHeaderView 不起作用 我也尝试将可见性设置为 消失 但它并没有消失 我能做
  • RadioGroup 扩展relativelayout?

    我正在尝试为我的应用程序制作一个单选按钮网格 据我所知 使用常规方法这是不可能的RadioGroup因为它扩展了 LinearLayout 并且如果你尝试安排RadioButtons在里面使用RelativeLayoutRadioGroup
  • Prolog家族关系,意外失败

    谁能告诉我为什么我的姨妈关系不工作 每当我尝试调用它时它都会返回 false 我在下面写的叔叔关系似乎运作得很好 我不明白有什么区别 我也尝试过 not mother X Y 最后也但这并没有改变任何东西 FACTS parents dav
  • 使用泛型类型参数作为参数

    我正在尝试创建一个通用函数 它用一个函数调用另一个函数any类型参数 这是我尝试过的 static GetInstance
  • 为什么 CROSS APPLY *不*在此查询中出现无效列错误?

    我正在编写一些代码来查询一些DMV 某些列可能存在于 DMV 中 也可能不存在 具体取决于 SQL 版本 我在网上发现了一个有趣的建议 如何使用跳过特定检查CROSS APPLY 下面的查询是读取 DMV 中可能缺失的列的代码示例 该代码为
  • 在 JavaScript 中交换两个对象

    我有以下代码 MyObject prototype doIt function var a this obj1 var b this obj2 我怎样才能交换的值这个 obj1 and 这个 obj2所以obj1变成obj2 obj2变成o
  • 模板、函数指针和 C++0x

    我的个人实验之一是为了了解 C 0x 的一些功能 我试图将函数指针传递给要执行的模板函数 最终执行应该发生在不同的线程中 但对于所有不同类型的功能 我无法使模板正常工作 include
  • 类型错误:$scope.apply 不是函数

    我试图在检索联系人列表后呈现它rdflib js 它正在正确加载并将其保存在范围内的列表中 但我无法渲染 scope 不更新的正弦 看起来我正在调用 scope apply 在错误的地方 发生错误是因为我将其称为外部角度 但我故意在角度上下
  • 返回 pandas 数据帧的函数

    我不清楚我的问题 所以我正在审查这个问题 我有一个操作通用数据框的函数 它删除并重命名列和记录 def manipulate df df local df local rename columns A grouping column inp
  • 如何为复杂的数学方程创建 Java GUI 程序

    我正在学习 Java AWT 和 Swings 并了解如何创建基本的 GUI 元素 并且我能够使用它来编写一些程序 但是 当我试图了解如何为一些复杂的数学方程创建图表时 我无法找到一些文档或任何示例 例如 在这篇文章中 如何求解三角方程co
  • 获取我的主屏幕小部件的大小

    我只想知道我当前的小部件有多大 我发现了很多设置最小尺寸的问题 但我不想设置它 相反 我想显示适合小部件的信息 如果小部件太小 我需要隐藏一些东西 但我需要知道它的大小 我阅读了一些类的源代码 例如AppWidgetProvider 甚至文
  • Go SDK Apache Beam:单例侧输入 Singleton for int 定义不明确

    使用适用于 Apache Beam 的 Go SDK 我尝试使用侧面输入创建 PCollection 的视图 但我收到这个奇怪的错误 Failed to execute job on ctx making side input 0 sing
  • 查找两个顶点之间的所有最短路径

    给定一个有向图G V E 两个顶点s t和两个权重函数w1 w2 我需要找到最短路径s to t by w2在所有最短路径之间s to t by w1 首先 我怎样才能找到两个顶点之间的所有最短路径s and t Dijkstra 算法帮助
  • Webpack DefinePlugin 未设置/读取 node_env 变量

    我在通过 Webpack 的 DefinePlugin 将 node env var 注入到我的代码中时遇到了真正的问题 并且在阅读了大量帖子后似乎没有任何效果 我有一种感觉 我错过了什么 所以我的生产 webpack 配置是 Config
  • 在 r 和正则表达式中,如何检测排除某些混合条件的字符

    我试图检测字符串中的一些点 并将它们替换为单词旁边的相同点 例如 变为 AAA 但有一些条件我想避免替换 如果点之前有一个空格和一个字符 如果点位于两个连字符 之间 例如 如果输入是 string lt first second third
  • IntegrityError:“user_id”列中的空值违反了非空约束(Django Rest Framework)

    我是 Django Rest Framework 的新手 我收到一个完整性错误 我正在尝试解决该错误 Intro 我有 2 个型号Patient and Embryo Patient 是 Django 默认用户的外键 只有 1 位用户是超级
  • 在开关内使用枚举

    我们可以在开关内使用枚举吗 public enum Color RED BLUE YELLOW public class Use Color c Color BLUE public void test switch c case Color
  • C# 中静态结构存储在哪里?

    From 这个问题 https stackoverflow com questions 2565331 fields of class are they stored in the stack or heap我明白 结构可以在堆栈或寄存器中
  • Autoconf 和 A​​utotools 的替代品? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi