Ethereal-dev: [Ethereal-dev] Check libtool version?

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Graeme Hewson <ghewson@xxxxxxxxxxxxxxxxxxx>
Date: Sun, 27 Nov 2005 12:16:40 +0000
Even though Ethereal doesn't use C++, if the compiler isn't installed, configure might issue these messages:

> checking how to run the C++ preprocessor... /lib/cpp
> configure: error: C++ preprocessor "/lib/cpp" fails sanity check
> See `config.log' for more details.

with config.log containing:

> configure:4981: /lib/cpp  conftest.cc
> cpp: installation problem, cannot exec 'cc1plus': No such file or directory

This is due to a bug in libtool, fixed in version 1.5.20. Is there any reason not to have autogen.sh check for libtool version >= 1.5.20, as it checks now for version >= 1.4? (Incidentally, configure.in could be simplified with version 1.5.20.)

Unfortunately, if someone encounters this problem, it's not sufficient to install the latest version of libtool in /usr/local, say, with $PATH set appropriately to override the older version in /usr. Somewhere along the line, libtool invokes the aclocal perl script, part of Automake, which hardwires the aclocal directory. E.g., if aclocal is installed in /usr/bin, it includes the line:

> $acdir = '/usr/share/aclocal';

which means that /usr/share/aclocal/libtool.m4 is invoked instead of the latest version installed in /usr/local/share/aclocal/libtool.m4.

I can't think of a simple way of checking for this dependency problem, but I suppose a detailed error message in autogen.sh would be good enough; it's not likely that someone would already have a newer version of libtool overlaid onto an older version.


Graeme Hewson