When trying to build Cyrus IMAP v2.3.10 on a Solaris 9 system, I get the 
following error:

gmake[1]: Entering directory `/usr/local/src/cyrus/cyrus-imapd-2.3.10/sieve'
../com_err/et/compile_et ./sieve_err.et
gcc -c -I.. -I./../lib -I../com_err/et -I/usr/local/BerkeleyDB.4.4/include  
-I/usr/local/ssl/include -I/usr/local/include -DHAVE_CONFIG_H  -g -O2  \
sieve_err.c
gcc -c -I.. -I./../lib -I../com_err/et -I/usr/local/BerkeleyDB.4.4/include  
-I/usr/local/ssl/include -I/usr/local/include -DHAVE_CONFIG_H  -g -O2  \
sieve.c
In file included from comparator.h:33,
                 from sieve.y:38:
/usr/local/include/pcreposix.h:110: error: syntax error before "int"
/usr/local/include/pcreposix.h:111: error: syntax error before "int"
/usr/local/include/pcreposix.h:113: error: syntax error before "size_t"
/usr/local/include/pcreposix.h:114: error: syntax error before "void"
gmake[1]: *** [sieve.o] Error 1
gmake[1]: Leaving directory `/usr/local/src/cyrus/cyrus-imapd-2.3.10/sieve'
gmake: *** [all] Error 1

There are some definitions in pcreposix.h that depend on some #define's in 
pcre.h, but pcre.h isn't #include'd anywhere.  Here are some relevant lines 
from the configure step:

checking pcreposix.h usability... no
checking pcreposix.h presence... yes
configure: WARNING: pcreposix.h: present but cannot be compiled
configure: WARNING: pcreposix.h:     check for missing prerequisite headers?
configure: WARNING: pcreposix.h: see the Autoconf documentation
configure: WARNING: pcreposix.h:     section "Present But Cannot Be Compiled"
configure: WARNING: pcreposix.h: proceeding with the preprocessor's result
configure: WARNING: pcreposix.h: in the future, the compiler will take 
precedence
configure: WARNING:     ## ------------------------------------------ ##
configure: WARNING:     ## Report this to the AC_PACKAGE_NAME lists.  ##
configure: WARNING:     ## ------------------------------------------ ##
checking for pcreposix.h... yes

So the configure script finds that pcreposix.h is unusable, but uses it anyway.

The build works fine on a different Solaris 9 system that doesn't have pcre 
installed.  Is there a fix for this problem, preferable one that doesn't 
involve hacking code?  Is there a config option to pretend pcreposix.h doesn't 
exist?

Thanks, Larry
----
Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html

Reply via email to