autoconf 和 automake 流程图中的哪些过程由谁在何时执行? [英] Which processes in the autoconf and automake flowchart are performed by who and when?
问题描述
在来自
软件程序的用户在下载软件程序的分发后执行哪些过程
这取决于你想做什么.很多人只是在使用基本的构建命令来配置、构建和安装软件包:
# ./configure;制作;进行安装
并且在这些情况下您不需要调用 autoreconf
、autoconf
、automake
,即使您正在修补源代码.如果修改范围大到需要修改 configure.ac
或 Makefile.am
文件,那么可能需要调用其他工具.通常 configure
足够智能,可以代表您自动调用它们.
autoscan
实际上仅用于将您的软件包移植到 GNU 构建系统.autoheader
也是如此.一旦您有了基本的 configure.ac
和 config.h.in
,您就不再需要这些工具了.这些工具很好,但不是必需来生成上述文件.
从源代码创建软件程序分发的一方(以及可能是软件程序的作者)执行哪些过程?
如果您有某种自动化软件构建,我想它会调用 autoreconf -fvi
并可能在从 VCS 重新结帐后调用其他几个步骤.这就是为什么有 bootstrap.sh
或 autogen.sh
脚本的原因.这基本上调用了aclocal
、autoconf
和automake
来编写configure
.然后基本上configure;make distcheck;
进行分发.
In the flowchart of autoconf and automake from https://en.wikipedia.org/wiki/Automake , there are several processes
- autoscan
- alocal
- autoheader
- autoconf
- automake
- configure
- make
Which processes are performed
- by a user of a software program after he downloaded the distribution of the software program
- by the party who creates the distribution of the software program from its source code (and who is likely the author of the software program)?
I ask this question, because I remember that after I, as a user of some software program, downloaded its source distribution, the commands I ran to build an executable from the source distribution were autoconf
, ./configure
, and make
. So I guess that the other processes in the flowchart had been performed during the creation of the distribution by the author of the software program. Am I correct?
Thanks.
Which processes are performed by a user of a software program after he downloaded the distribution of the software program
It depends on what you want to do. Lots of people are only after the basic build commands to configure, build, and install the software package:
# ./configure; make; make install
and you'll not need to invoke autoreconf
, autoconf
, automake
in those cases, even if you're patching source. If the modifications are extensive enough to need to modify configure.ac
or Makefile.am
files, then maybe the other tools will need to be invoked. Often configure
is smart enough to automatically invoke them on your behalf.
autoscan
is really only useful for for porting your software package to the GNU Build System. The same for autoheader
. Once you've got a basic configure.ac
and config.h.in
you're not going to be needing those tools again. These tools are nice, but not required to produce the aforementioned files.
Which processes are performed by the party who creates the distribution of the software program from its source code (and who is likely the author of the software program)?
If you have some kind of automated software build, I'd imagine it'd invoke autoreconf -fvi
and possibly a few other steps after a fresh checkout from a VCS. That's why there are bootstrap.sh
or autogen.sh
scripts. That basically invokes aclocal
, autoconf
and automake
to write configure
. Then basically configure; make distcheck;
to make the distribution.
这篇关于autoconf 和 automake 流程图中的哪些过程由谁在何时执行?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!