<html><head><meta name="qrichtext" content="1" /></head><body style="font-size:10pt;font-family:Sans">
<p></p>
<p>I feel ashamed to ask this, being I am a 10+ year Configuration Manager on a number of projects. Only problem is, for the most part, I was not building GNU tools (there always seemed to be someone to do that part). But I am very familiar with build tools, having written a few, and having worked for a company that produced build tools.</p>
<p></p>
<p>Trouble I am having is this: I am trying to build gnucash from scratch on my Mandrake 10.1/x86 system. I do the following:</p>
<p></p>
<p><span style="font-family:Courier 10 Pitch">cvs -d :pserver:cvs@cvs.gnucash.org:/home/cvs/cvsroot checkout gnucash </span></p>
<p></p>
<p>which works fine. Then</p>
<p></p>
<p>autoupdate so I can get configure.in into a format compatible with my autoconf, which is 2.5/2.59 (I was getting about a dozen errors if I did not run autoupdate first). That works OK, then:</p>
<p></p>
<p><span style="font-family:Courier 10 Pitch">autoconf</span></p>
<p></p>
<p>with no arguments (that could be my problem?). Here is the output:</p>
<p></p>
<p><span style="font-family:Courier 10 Pitch">configure.in:1339: error: m4_popdef: undefined macro: AC_Dest</span></p>
<p><span style="font-family:Courier 10 Pitch">autoconf/status.m4:848: AC_CONFIG_FILES is expanded from...</span></p>
<p><span style="font-family:Courier 10 Pitch">configure.in:1339: the top level</span></p>
<p><span style="font-family:Courier 10 Pitch">autom4te-2.5x: /usr/bin/m4 failed with exit status: </span>1</p>
<p></p>
<p>Since (apparently) other folks are not having this problem with the build (or I am sure I would have seen something in the archives about it; I did check), this might have something to do with my specific development environment.</p>
<p></p>
<p>So I decided to investigate if this might be the case. I ran autoconf with the tracing turned on, and copy-and-pasted the output to a new text file. I did some editing so I could see just the relevant portion of the m4 processing:</p>
<p></p>
<p><span style="font-family:Courier 10 Pitch">#!/bin/bash</span></p>
<p></p>
<p><span style="font-family:Courier 10 Pitch">echo calling m4:</span></p>
<p></p>
<p><span style="font-family:Courier 10 Pitch">/usr/bin/m4 --nesting-limit=4096 --include=/usr/share/autoconf --debug=aflq --fatal-warning --trace=AC_CONFIG_FILES --reload-state=/usr/share/autoconf/autoconf/autoconf.m4f configure.hal</span></p>
<p></p>
<p>Note that I copied configure.in to a work copy so I could test stuff out. I got basically the same output as before, but with the trace detail. Finally, I removed the reload-state option, just to see what happens (I know, I know, but give me a moment here). I get a message (in red) at the end of the output (on stderr) :</p>
<p></p>
<p><span style="font-family:Courier 10 Pitch"> ...</span></p>
<p><span style="font-family:Courier 10 Pitch"> # Enable error-on-warning by default -- I'm tired of fixing other</span></p>
<p><span style="font-family:Courier 10 Pitch"> # people's missing #includes, etc.</span></p>
<p><span style="font-family:Courier 10 Pitch"> AC_ARG_ENABLE(error-on-warning,</span></p>
<p><span style="font-family:Courier 10 Pitch"> [ --disable-error-on-warning disable treating compile warnings as errors],</span></p>
<p><span style="font-family:Courier 10 Pitch"> [case "${enableval}" in</span></p>
<p><span style="font-family:Courier 10 Pitch"> yes) warnFLAGS="${warnFLAGS} -Werror" ;;</span></p>
<p><span style="font-family:Courier 10 Pitch"> no) ;;</span></p>
<p><span style="font-family:Courier 10 Pitch"> *) AC_MSG_ERROR(bad value ${enableval} for --enable-error-on-warning) ;;</span></p>
<p><span style="font-family:Courier 10 Pitch"> esac],</span></p>
<p><span style="font-family:Courier 10 Pitch"> [ warnFLAGS="${warnFLAGS} -Werror" ])</span></p>
<p></p>
<p><span style="font-family:Courier 10 Pitch"> # For gcc >= 3.4.x, specifically enable the new warning switch</span></p>
<p><span style="font-family:Courier 10 Pitch"> # -Wdeclaration-after-statement in order to preserve source code</span></p>
<p><span style="font-family:Courier 10 Pitch"> # compatibility to gcc 2.95 and other compilers.</span></p>
<p><span style="font-family:Courier 10 Pitch"> GCC_VERSION=NONE:0: </span><span style="font-family:Courier 10 Pitch;font-weight:400;color:#ff0000">/usr/bin/m4: ERROR</span></p>
<p></p>
<p>Ok, so it looks like m4 is coughing? Maybe problem with that particular enable option; but, no, I edited my work copy of the configure.in file and moved this option toward the top, before the preceding options are generated. Same problem, just a different enable option. I also tried playing with the options in my little shell script (above), but to no avail.</p>
<p></p>
<p>What am I doing wrong? And for that matter, is my analysis thorough enough for this board? Am I making the fatal mistake that every newbie to GNU builds makes? (Probably. Probably something really dumb.) Sorry if this is long, but I felt I should do some research before pestering everyone.</p>
<p></p>
<p>More info on my setup:</p>
<p>Mandrake 10.1 with all patches from mandrake</p>
<p>m4 version 1.4.1</p>
<p>automake 1.9</p>
<p>autoconf2.5-2.59-6mdk</p>
<p>g-wrap 1.3.4</p>
<p></p>
<p>One more thing: I know that you have to install the *-devel packages for everything to work correctly. But I also had problems with doing that. For instance, when I was running configure from the tarball, not doing my own autoconf, it would complain that it could not find -libgal, but it is in fact installed (libgal23, in fact). Go ahead, fill me in. And please remember to shoot me if this was already discussed elsewhere in the mailing lists.</p>
<p></p>
<p>Appreciate your help,</p>
<p>Hal</p>
<p>(once-proud buildmeister of Unix utilities and tools)</p>
<p></p>
<p></p>
<p></p>
<p></p>
<p></p>
</body></html>