我们在工作中维护基于RPM的软件分发,以便我们在所有支持的平台上拥有一套通用软件.因此,我们必须构建许多第三方软件,并经常发现需要运行autoconf/automake/libtoolize/etc以使其在Solaris或其他平台上构建的情况.
我的结果非常复杂.看起来这些工具相当脆弱,并且文件通常仅适用于最初编写的autoconf/automake/etc版本.
理想情况下,我只想支持一个版本的GNU autotools,但我得到的印象是,我真的最终必须拥有每个版本的副本.
这是不寻常的,还是其他人有同样的问题?是否有一部分autotools版本可以涵盖所有案例?
确实,autotools可以是脆弱的和版本特定的.但请记住,您只需要在开发机器上使用这些工具.将项目部署到目标计算机不需要在目标上安装任何工具.即使是测试机器也不需要任何工具.它们实际上只需要在依赖项发生更改时运行,例如向项目添加其他文件或库.
多年来,我们一直在将这些工具用于内部项目,并且没有遇到更好的解决方案.如果你是在Unix世界中,不要低估有一个系统,其中的好处configure; make; make install
只是工作.