8.3.9.1 Error: ‘required file './ltmain.sh' not found’—libtoolize needed

Libtool comes with a tool called libtoolize that will install Libtool’s supporting files into a package. Running this command will install ltmain.sh. You should execute it before aclocal and automake.

People upgrading old packages to newer autotools are likely to face this issue because older Automake versions used to call libtoolize. Therefore old build scripts do not call libtoolize.

Since Automake 1.6, it has been decided that running libtoolize was not Automake’s business. Instead, that functionality has been moved into the autoreconf command (see Using autoreconf in The Autoconf Manual). The autoreconf command saves you from having to figure out which infrastructure scripts to run in what order. Augmenting existing bootstrap or autogen.sh scripts with a call to autoreconf should also free you from any similar incompatible change in the future.