如果configure.ac可用,是否应该分发“configure”脚本?

时间:2012-01-14 20:22:32

标签: autoconf

目前,我们的安装说明是:

autoreconf -fi
./configure
...

autoreconf步骤从configureconfigure.ac Makefile.in生成Makefile.in文件。如果未安装其中一个依赖项(例如pkg-config),则configureautoreconf都会失败,尽管后者会输出一个含义错误的错误消息。

发布源代码压缩包时,是否应在包中提供configure脚本?如果必须分发,还需要包含哪些其他文件?还创建了目录build-auxautom4te.cache以及文件aclocal.m4

3 个答案:

答案 0 :(得分:6)

在SCM存储库中,不应存在任何自动生成的内容(包括配置 - 但开发人员的意见在这里离题)。 tarball应该包含autoreconf -fi和/或autogen.sh之后的状态(或者您为其选择的名称)。第三,您也可以使用make dist,但它要求所有出现在tarball中的文件也列在Makefile中。

答案 1 :(得分:4)

您的安装说明非常糟糕。用户不需要安装autotool链来构建软件。您必须在tarball中分发configure脚本。请注意,不应在版本控制系统中包含configure脚本。 (您不应将版本控制系统用作分发系统。)

答案 2 :(得分:3)

配置脚本应该由维护者构建并分发在tarball中。最终用户永远不必触摸它,如果您使用的是automake,最好通过AM_MAINTAINER_MODE来确保这一点。如果没有,请确保在为最终用户投放时Makefile.in不会重新生成configure

如果您想了解其他所属内容,请automake为您生成分发。辅助目录build-auxaclocal.m4执行,automat4e.cache没有。