如何学习使用Autotools/libtool? (有人也不喜欢吗?)
题
当某些项目拥有所有“ ltmain”,“ aclocal.m4”和其他“ autogen.sh”时,它会带来不适:
./autogen.sh
是缓慢的。./configure
是缓慢的。./configure
失败的抱怨错过了一些。我修复了它,它会抱怨接下来的事情。 减缓.- makefiles很大。配置脚本很大。甚至
configure.ac
通常很大且难以理解。 - makefile.am and configure.ac充满了大多数神秘的变量。它如何推论规则?
- 我 突然 意识到我只复制了libtool的shell脚本存根,而实际的二进制
.deps
或者.libs
管他呢。 - 总的来说,如果那里有东西破裂,我会感到不确定该怎么做,而错误消息通常会令人困惑。
- 最后,即使小项目具有AutoTool的配置脚本(当源代码在存档中为5KB)时,即使在存档中至少是50kb。
它的每个问题都会为{auto,lib}工具增加越来越多的仇恨点。
如何与这些事情保持良好状态?是否有一个简短的教程(不长的“ GNU构建系统介绍”,或者如何称呼它)加上全面的参考如何创建,修复和调试这些东西?
解决方案
http://www.lrde.epita.fr/~adl/autotools.html 是一个很棒的教程。不要让页面计数使您失望:其中大部分是逐件出现的图表。
其他提示
那里有一本书 GNU AutoConf,Automake和Libtool 由新车手出版。我拥有一份副本,但不能强烈推荐它,主要是因为我对工具并不真正感兴趣。不过,这似乎是相当权威的 - 作者是红帽人和GNU维护者。
更新: 看来这本书的内容在线可用 这里.
不隶属于 StackOverflow