Guy Harris wrote:
Aamer Akhter wrote:
Looks like the problem was that flex was not installed on the system.
Apparently configure did not catch this.
Could you try either hiding or un-installing flex, doing "make
distclean" and running the configure script, and making available the
output of the configure script and the config.log file, so we can try to
figure out why the configure script didn't catch that and fix it if
possible?
Don't bother - I found it.
The configure script isn't supposed to catch that, or, rather, it did
catch that and did what's appropriate.
We don't want to prevent somebody who doesn't have Lex or Flex installed
from compiling a release tarball; the release tarballs include the
result of running Lex/Flex on the ".l" files in the source tree (and of
running Yacc/BYacc/Bison on the ".y" files), so you don't have to have
those installed.
However, if you're building from SVN (or if you've modified one of the
.l or .y files), that won't work if you don't have Lex or Flex.
I modified the relevant Makefile.am files so that the resulting
Makefiles will, in the rules that use Lex/Flex, first check to make sure
$(LEX) is set to a string that refers to the pathname of an executable
file and, if it doesn't, they will print an error message and exit with
an error.
(.y might be trickier, as I think we're using implicit rules for that.)