[clug] Why the autotools hate? (Was: Why isn't Java popular on the Linux Desktop?)

Brad Hards bradh at frogmouth.net
Fri Jul 10 00:13:51 MDT 2009


On Friday 10 July 2009 15:22:25 Jack Kelly wrote:
> I don't understand the hate for autotools. IME, it's the best of the
> systems that I've played with, both as a user and implementing build
> systems with them. I've also played with CMake and SCons, but taken
> issue with them and returned to the autotools.
I think its partly a matter of experience and taste. I personally dislike 
(rather than hate) autotools, and definitely prefer CMake (and more generally, 
makefile generators like qmake).

My dislikes are based on some very unfortunate syntax changes, and some not 
very good use of what autoconf (and to a lesser extent, automake) can do. As 
examples:
* I still have trouble getting gcc to autoconf itself after making changes (it 
requires specific versions, and 2.63 Just Will Not Do). 
http://gcc.gnu.org/wiki/Regenerating_GCC_Configuration
* I've seen a fair amount of stuff that attempted to deal with portability 
problems on an ad-hoc basis (e.g. trying to find installed include / lib 
directories without using pkg-config). 
* Occasional attempts to generate Makefile.am (ocropus does this).

Probably the biggest problem is that it is very easy to make a mistake that 
isn't picked up by the tools.

I like the declarative power of CMake, and also that it is pretty good on the 
cross-platform stuff. I also like the proper automated dependency tracking. In 
fact, the only thing I really like is to get the book updated to 2.6.

I didn't really take to scons. Experience on the KDE project is that it just 
didn't have enough power. CMake is good though, and very well supported.

Brad



More information about the linux mailing list