View Single Post
  #1   (View Single Post)  
Old 25th March 2009
shaun shaun is offline
New User
 
Join Date: Mar 2009
Posts: 3
Default re2c installation fails

Hi all,

I'm trying to upgrade my SpamAssassin installation. I've gotten as far as updating to p5-Mail-SpamAssassin-3.2.5_2 (from 3.1.1) along with its dependencies. On installation, it told me to run sa-compile. When I try to run sa-compile, here's what I get:

Code:
[root@shaunc p5-Mail-SpamAssassin]# sa-compile
[24063] info: generic: base extraction starting. this can take a while...
[24063] info: generic: extracting from rules of type body_0
100% [=========================================================================================================] 3662.83 rules/sec 00m00s DONE
100% [=========================================================================================================] 225.00 bases/sec 00m04s DONE
[24063] info: body_0: 679 base strings extracted in 4 seconds
cd /tmp/.spamassassin24063DuMmqktmp
cd Mail-SpamAssassin-CompiledRegexps-body_0
re2c -i -b -o scanner1.c scanner1.re
Can't exec "re2c": No such file or directory at /usr/local/bin/sa-compile line 287, <$fh> line 979.
command failed! at /usr/local/bin/sa-compile line 288, <$fh> line 979.
Sure enough, re2c doesn't exist on my system. So, off to /usr/ports/devel/re2c where I receive some errors:

Code:
[root@shaunc re2c]# make
[ snip configure output ]
===>  Building for re2c-0.13.5
make  all-am
source='code.cc' object='code.o' libtool=no  DEPDIR=.deps depmode=gcc /bin/sh ./depcomp  c++ -DHAVE_CONFIG_H -I.      -O -pipe -c -o code.o code.cc
In file included from globals.h:9,
                 from code.cc:11:
stream_lc.h:18: syntax error before `<'
stream_lc.h:29: syntax error before `;'
stream_lc.h:31: syntax error before `<'
stream_lc.h:42: destructors must be member functions
stream_lc.h:42: virtual outside class declaration
stream_lc.h: In function `void basic_null_stream()':
stream_lc.h:42: confused by earlier errors, bailing out
cpp0: output pipe has been closed
*** Error code 1

Stop in /usr/ports/devel/re2c/work/re2c-0.13.5.
*** Error code 1

Stop in /usr/ports/devel/re2c/work/re2c-0.13.5.
I can't figure out what the problem might be. I've searched for various permutations of the dtor and virtual errors. I found one match for the error in basic_null_stream, but the post was in Japanese and didn't have any replies, anyway.

Any idea what might be going on? This is FreeBSD 4.11, gcc 2.95.4.
Reply With Quote