Composition of Autotools Tools
1, AutoScan
AutoScan is used to scan the source code directory to generate Configure.san files, Configure.san contains the basic system configuration options, there are some macro definitions, we need to change its name to Configure.in
2, Aclocal
Aclocal is a Perl scripting program. Aclocal automatically generates ACLOCAL.M4 files based on the contents of the Configure.in file, and the resulting ACLOCAL.M4 file is a macro expansion file.
3, autoconf
Autoconf is used to produce configure files, the contents of the Configure.in file are macros, which are processed by autoconf into a shell script that examines system features, environment variables, and the parameters required by the software.
4, Autohead
Automatically generate config.h.in
5, Automake
Use automake-add-missing to generate makefile.in.
Document address:https://www.gnu.org/software/autoconf/manual/autoconf.html
Files used in preparing a software the package for distribution, when using just Autoconf:
Your source files---[autoscan*]--[Configure.scan] -configure.ac configure.ac--. | . ------> autoconf*-----> Configure [ACLOCAL.M4]--+---+ | '-----> [autoheader*]--[config.h.in] [ACSITE.M4]---' makefile.in
Additionally, if you use Automake, the following additional productions come into play:
[ACINCLUDE.M4]--. | [Local macros]--+--> aclocal*-aclocal.m4 | Configure.ac----' configure.ac--. +--> automake*-makefile.in makefile.am---'
Files used in configuring a software package:
.-------------> [Config.cache] configure*------------+-------------> Config.log | [Config.h.in]-. V .-> [config.h]-. +--> config.status*-+ +--> make* makefile.in ---', Makefile---'
Autotools Process Demo 1, AutoScan
Modify the Configure.san file name to Configure.ac or configure.in, and open the configuration we generated makefile information.
2, Aclocal
Execute the autoconf command to generate the Configure executable file and create a new makefile.am to edit the content
Bin_programs = Hellohello_sources = hello.c
Installing the Software
Execute make command and sudo make install
Go to/usr/local/bin below to execute our executable hello
Generating a compressed package
Android system Development (4)--autotools