According to Holmes, Gregory:
> Hmm... there is a /usr/include/regex.h, but I renamed it to regex.h.old, ran
> configure and make again, and got the same error.  I've attached it in case
> might be useful.
> 
> There is a Regex.h (note the capital) in the htfuzzy directory and a regex.h
> in the htlib directory.  Is that right?

D'oh!!!  This is the problem.  On Windows, file names are case-insensitive,
so the compiler can't make a destinction between the regex.h file and the
Regex.h file in the htfuzzy directory.  The compiler is called with "-I."
as one of the first options, so when compiling in the htfuzzy directory,
that's the first directory that's searched, and it happily picks up the
Regex.h file in there in response to a #include <regex.h> directive.

Sure enough, line 20 of Regex.h is an include of "HtRegex.h".

Try renaming Regex.h to Regexp.h, or something else unique, and fix up any
references to it in Regex.cc, Fuzzy.cc, and htfuzzy/Makefile*.  Then see
if you can build the code.  If this fixes the problem, I'll suggest a more
permanent name change for the source files in Geoff's "regex" fuzzy match
code.

> -----Original Message-----
> From: Gilles Detillieux [mailto:[EMAIL PROTECTED]]
> Sent: Thursday, June 14, 2001 5:16 PM
> To: Holmes, Gregory
> Cc: [EMAIL PROTECTED]
> Subject: Re: [htdig] compiling 3.2.0b3 on Cygwin
> 
> 
> According to Holmes, Gregory:
> > I get an error compiling 3.2.0.b3 with Cygwin on NT 4.0.  I am using the
> > latest Cygwin (just installed from net).
> > 
> > Here is the error I get:
> > 
> > f/htdig.conf\" -I../include -I../htlib -I../htnet -I../htcommon
> -I../htword
> > /db -I../db -DMV=\"/usr/bin/mv\" -I/usr/include -g -O2 -Wall -fno-rtti
> -fno
> > ptions -Wp,-MD,.deps/EndingsDB.pp -c EndingsDB.cc -o EndingsDB.o
> > In file included from regex.h:20,
> >                  from EndingsDB.cc:31:
> > ../htlib/HtRegex.h:60: syntax error before `;'
> > EndingsDB.cc: In method `void Endings::expandWord(String &, List &,
> Diction
> > , char *, char *)':
> > EndingsDB.cc:334: `regex_t' undeclared (first use this function)
> > EndingsDB.cc:334: (Each undeclared identifier is reported only once
> > EndingsDB.cc:334: for each function it appears in.)
> > EndingsDB.cc:334: parse error before `;'
> > EndingsDB.cc:340: `reg' undeclared (first use this function)
> > EndingsDB.cc:340: `REG_ICASE' undeclared (first use this function)
> > EndingsDB.cc:340: `REG_NOSUB' undeclared (first use this function)
> > EndingsDB.cc:340: `REG_EXTENDED' undeclared (first use this function)
> > EndingsDB.cc:340: implicit declaration of function `int regcomp(...)'
> > EndingsDB.cc:341: implicit declaration of function `int regexec(...)'
> > EndingsDB.cc:369: implicit declaration of function `int regfree(...)'
> > make[1]: *** [EndingsDB.lo] Error 1
> > make[1]: Leaving directory `/usr/local/src/htdig-3.2.0b3/htfuzzy'
> > make: *** [all-recursive] Error 1
> > 
> > Can anyone offer insight on this?
> 
> Very bizarre!  The error message from the compiler suggests that line 20
> of regex.h is trying to include htlib/HtRegex.h, and the errors are caused
> by regex.h not defining the things it should.  What is this regex.h file
> on your system?  This isn't the behaviour one would get from the regex.h
> in htlib, so I'd assume your system is using a different one.

-- 
Gilles R. Detillieux              E-mail: <[EMAIL PROTECTED]>
Spinal Cord Research Centre       WWW:    http://www.scrc.umanitoba.ca/~grdetil
Dept. Physiology, U. of Manitoba  Phone:  (204)789-3766
Winnipeg, MB  R3E 3J7  (Canada)   Fax:    (204)789-3930

_______________________________________________
htdig-general mailing list <[EMAIL PROTECTED]>
To unsubscribe, send a message to <[EMAIL PROTECTED]> with a 
subject of unsubscribe
FAQ: http://htdig.sourceforge.net/FAQ.html

Reply via email to