Bug #5319 MySQL 4.1.4 will not compile without a very specific version of automake
Submitted: 31 Aug 2004 15:53 Modified: 3 Sep 2004 18:20
Reporter: Timothy Crider Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Compiling Severity:S2 (Serious)
Version:4.1.4 gamma OS:Linux (Red Hat Linux AS 3)
Assigned to: Lenz Grimmer

[31 Aug 2004 15:53] Timothy Crider
Description:
When trying to build MySQL 4.1.4 Gamma on my Red Hat Enterprise Linux AS release 3, it will not compile with any other version of automake unless it is 1.7.6. I upgraded to 1.9.1 and it failed. I upgraded to 1.7.9 and it failed. So it looks like the only version of automake that will compile the source for 4.1.4 is automake 1.7.6.

Here is what the make actually shows:

Making all in libedit
make[3]: Entering directory `/data/BUILD/mysql-4.1.4-gamma/cmd-line-utils/libedit'
cd ../.. && \
  /bin/sh /data/BUILD/mysql/missing --run automake-1.7 --gnu  cmd-line-utils/libedit/Makefile
configure.in:7: version mismatch.  This is Automake 1.7.9,
configure.in:7: but the definition used by this AM_INIT_AUTOMAKE
configure.in:7: comes from Automake 1.7.6.  You should recreate
configure.in:7: aclocal.m4 with aclocal and run automake again.
WARNING: `automake-1.7' is needed, and you do not seem to have it handy on your
         system.  You might have modified some files without having the
         proper tools for further handling them.  Check the `README' file,
         it often tells you about the needed prerequirements for installing
         this package.  You may also peek at any GNU archive site, in case
         some other package would contain this missing `automake-1.7' program.
make[3]: *** [Makefile.in] Error 1
make[3]: Leaving directory `/data/BUILD/mysql-4.1.4-gamma/cmd-line-utils/libedit'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/data/BUILD/mysql-4.1.4-gamma/cmd-line-utils'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/data/BUILD/mysql-4.1.4-gamma'
make: *** [all] Error 2

and for 1.9.1

Making all in libedit
make[3]: Entering directory `/data/BUILD/mysql-4.1.4-gamma/cmd-line-utils/libedit'
cd ../.. && \
  /bin/sh /data/BUILD/mysql/missing --run automake-1.7 --gnu  cmd-line-utils/libedit/Makefile
configure.in:7: version mismatch.  This is Automake 1.9.1,
configure.in:7: but the definition used by this AM_INIT_AUTOMAKE
configure.in:7: comes from Automake 1.7.6.  You should recreate
configure.in:7: aclocal.m4 with aclocal and run automake again.
WARNING: `automake-1.7' is needed, and you do not seem to have it handy on your
         system.  You might have modified some files without having the
         proper tools for further handling them.  Check the `README' file,
         it often tells you about the needed prerequirements for installing
         this package.  You may also peek at any GNU archive site, in case
         some other package would contain this missing `automake-1.7' program.
make[3]: *** [Makefile.in] Error 1
make[3]: Leaving directory `/data/BUILD/mysql-4.1.4-gamma/cmd-line-utils/libedit'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/data/BUILD/mysql-4.1.4-gamma/cmd-line-utils'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/data/BUILD/mysql-4.1.4-gamma'
make: *** [all] Error 2

How to repeat:
Here is my configure script:

./configure --prefix=/usr/local/mysql \
--libexecdir=/usr/local/libexec \
--libdir=/usr/local/lib \
--includedir=/usr/local/include \
--enable-local-infile \
--with-pthread \
--with-unix-socket-path=/tmp/mysql.sock \
--with-mysqld-username=mysql \
--with-vio \
--without-isam \
--enable-thread-safe-client \
--with-openssl=/usr/local/openssl-0.9.7d \
--without-innodb

Suggested fix:
Shouldn't mysql be able to be compiled with almost any version of automake especially from the 1.7.x tree or higher?
[31 Aug 2004 17:37] Matthew Schultz
I am running automake 1.8.5 on one slackware linux machine and 1.9 on another and I can confirm this bug as well.
[31 Aug 2004 22:30] Nathaniel Blanchard
We just ran into the same issue.  We never needed automake to build the source tarball before (since 4.1 alpha).  We tried building on AIX, Solaris x86, Solaris sparc, HP-UX, Linux, etc and in all cases, its complaining about automake.  In one case, we had a higher version of automake 1.9.something and it too complained about the version of automake.  

I hope this gets fixed in the next couple days.
[1 Sep 2004 11:19] Sergei Golubchik
touch cmd-line-utils/libedit/Makefile.in

as a workaround
[1 Sep 2004 11:26] Lenz Grimmer
Another fix that might be worth a try: add "--with-readline" to the configure options to use readline 
instead of libedit for building.
[1 Sep 2004 11:42] Lenz Grimmer
This only affects the source tarball - I will fix this libedit issue and then release it as 4.1.4a when it's done. Sorry for the inconvenience!
[3 Sep 2004 18:20] Lenz Grimmer
The source tarball has now been fixed to no longer show this automake error message and a few required fixes to make libedit compile have been applied on top of it as well. (see bug#5353 for more details on this)

It has been uploaded as mysql-4.1.4a-gamma.tar.gz to our staging server and will be available from the mirror sites soon. The Download pages will be updated as soon as the package has been propagated to most mirrors.