我是Autotools的新手。据我了解,人们将使用以下基本步骤来使用Autotools构建软件:
autoreconf --install
./configure
make
但是,我注意到(在Linux上)大多数开源软件包都不需要步骤1。大多数时候,它们仅需要步骤2和3即可构建。看来它们已经与
Makefile.in
打包在一起了。我想知道为什么吗?他们是手动编码Makefile.in
还是软件开发人员在创建软件包之前使用autoreconf
生成Makefile.in
?谢谢。
最佳答案
创建压缩包的软件开发人员(或从版本控制系统中 check out 源代码的软件开发人员)通常会从称为autoreconf
或bootstrap.sh
的脚本中调用autogen.sh
,该脚本可能会做其他事情。 autoreconf
也可能由Makefile
调用(例如configure.ac
更改时)。
大多数用户甚至都不需要运行autoreconf
,即使是正在对源代码进行一些修改的用户(例如补丁程序)。只有那些需要对包本身进行修改(对configure.ac
和/或Makefile.am
进行更改)的人才需要autoreconf
。
关于linux - 为什么不经常使用 “autoreconf”?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19263899/