重构构建系统以使用 Autotools

Posted

技术标签:

【中文标题】重构构建系统以使用 Autotools【英文标题】:Refactoring build system to use Autotools 【发布时间】:2009-06-09 19:46:37 【问题描述】:

在过去的几天里,我一直在阅读使用 autotools 来构建我的项目,而不是过去几个月我拼凑的 Makefile。不幸的是,我还没有找到一个可以让我充分了解我目前的项目结构的示例。

我的项目的应用程序代码中包含三个库。我正在寻找使用单个配置脚本来制作(和安装)应用程序和库的最佳方式。

【问题讨论】:

Autotools 文档有点稀疏。它们也不是最简单的工具。非常 Unix 化。 我听说了;我正在做的项目我宁愿通过 GNU 工具链轻松部署。 【参考方案1】:

抱歉跑题了。

我现在做了类似的事情,但我可以在 Autotools 和 CMake 之间进行选择。我很高兴选择了第二个。

可能值得一看,包括 Cdash、CTest 和 CPack。 http://www.cmake.org/

最好的问候,

欧文

【讨论】:

您介意分享一些 cmake 教程吗?该网站只是指向这本书。 +1 为 CMake 一旦你开始它是非常容易的。我将它用于我所有的 c++ 项目,即使我只是在 Visual Studio 中创建一个小峰值。【参考方案2】:

以下是我发现的一些看起来不错的:

    http://www.lrde.epita.fr/~adl/autotools.html http://www.developingprogrammers.com/index.php/2006/01/05/autotools-tutorial/ http://sources.redhat.com/autobook/

最后一本是免费书

祝你好运

【讨论】:

我已经使用 autotools 大概 10 年了,并且仍然使用“info automake”文档。 #2 参考这里有一张有用的图片来掌握生成的内容。我还建议找到一个现有的自动工具项目,例如具有您需要的模式的 GNU 项目 - libs+app 并看看他们做了什么。我建议为每个库和应用程序使用单独的目录。 但不要只是从 OSS 复制粘贴。除了许可证之外,还有很多糟糕的自动工具示例。【参考方案3】:

这里是 autoconf 的入门指南:http://amjith.blogspot.com/2009/04/autoconf-and-automake-tutorial.html

【讨论】:

谢谢,这也很有帮助!【参考方案4】:

当我读到这篇文章时,我已经对自动工具非常熟悉了,但这似乎是一个很好的介绍: link text

【讨论】:

以上是关于重构构建系统以使用 Autotools的主要内容,如果未能解决你的问题,请参考以下文章

网页高效重构思想

构建可靠的磁盘系统:故障判定和自动化处理

如何将按键存储到变量中以重构此代码?

使用 GROUP BY/HAVING 重构子查询?

重构:以Java POI 导出EXCEL为例

使用Jenkins实现重构项目并部署项目到阿里k8s环境运行