15 Nov 2006 boto   » (Journeyer)

Another rant about a development tool: guess who?

Actually it is not a single tool, but a set of tools. I am talking about autotools again.

I wanted to build konversation from svn. I did the following:

  • First, checkout extragear/network/konversation from KDE svn: svn co svn://anonsvn.kde.org/home/kde/trunk/extragear/network/konversation
  • Enter the konversation directory: cd konversation
  • Get the kde-common/admin directory for the buildsystem: svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kde-common/admin
  • Run the cvs.sh script for the KDE buildsystem: sh admin/cvs.sh cvs

What I get is:

$ sh admin/cvs.sh cvs
*** Creating acinclude.m4
*** Creating list of subdirectories
*** Creating configure.files
*** Creating configure.in
*** Creating aclocal.m4
configure.in:8: error: m4_defn: undefined macro: _m4_divert_diversion
acinclude.m4:4532: KDE_CHECK_HEADER is expanded from...
configure.in:8: the top level
autom4te-2.5x: /usr/bin/m4 failed with exit status: 1
aclocal: /usr/bin/autom4te failed with exit status: 1

undefined macro: _m4divertdiversion“. What kind of error message is that?

This is why I don’t like autotools: how is someone supposed to know where the real problem is, from this message? It is impossible to tell what is wrong from this message, unless you have written autoconf yourself.

Yes, I did something very wrong above, regarding the KDE buildsystem. I will see if someone is able to tell where the real problem was. But the rant is about the non-intuitive error message I was getting. I took days to find out what I was doing wrong.

Syndicated 2006-03-05 03:12:29 from Eduardo Habkost / diary

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!