[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
20.6 What is ‘autom4te.cache’?
What is this directory ‘autom4te.cache’? Can I safely remove it? |
In the GNU Build System, ‘configure.ac’ plays a central
role and is read by many tools: autoconf
to create
‘configure’, autoheader
to create ‘config.h.in’,
automake
to create ‘Makefile.in’, autoscan
to
check the completeness of ‘configure.ac’, autoreconf
to
check the GNU Build System components that are used. To
“read ‘configure.ac’” actually means to compile it with M4,
which can be a long process for complex ‘configure.ac’.
This is why all these tools, instead of running directly M4, invoke
autom4te
(see section Invoking autom4te
) which, while answering to
a specific demand, stores additional information in
‘autom4te.cache’ for future runs. For instance, if you run
autoconf
, behind the scenes, autom4te
also
stores information for the other tools, so that when you invoke
autoheader
or automake
etc., reprocessing
‘configure.ac’ is not needed. The speed up is frequently 30%,
and is increasing with the size of ‘configure.ac’.
But it is and remains being simply a cache: you can safely remove it.
Can I permanently get rid of it? |
The creation of this cache can be disabled from
‘~/.autom4te.cfg’, see Customizing autom4te
, for more
details. You should be aware that disabling the cache slows down the
Autoconf test suite by 40%. The more GNU Build System
components are used, the more the cache is useful; for instance
running ‘autoreconf -f’ on the Core Utilities is twice slower without
the cache although ‘--force’ implies that the cache is
not fully exploited, and eight times slower than without
‘--force’.