Problem compiling cirus-imapd-2.2 (cvs 22042003)

Nikola Milutinovic Nikola.Milutinovic at
Wed Apr 23 05:33:47 EDT 2003

Vittorio Manfredini wrote:
> I have a problem compiling cyrus-imapd-2.2 retriving this morning from CVS.
> When they try to compile perl/imap/IMAP.c I receive this error :
> /usr/bin/perl /usr/lib/perl5/5.8.0/ExtUtils/xsubpp  -typemap
> /usr/lib/perl5/5.8.0/ExtUtils/typemap -typemap typemap  IMAP.xs > IMAP.xsc &&
> mv IMAP.xsc IMAP.c
> cc -c  -I../../lib -I/usr/include  -D_REENTRANT -D_GNU_SOURCE
> -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O3 --pipe  
> -DVERSION=\"1.00\" -DXS_VERSION=\"1.00\" -fPIC
> "-I/usr/lib/perl5/5.8.0/i586-linux-thread-multi/CORE"  -DPERL_POLLUTE IMAP.c
> cc1: warning: changing search order for system directory "/usr/include"
> cc1: warning:   as it has already been specified as a non-system directory
> IMAP.xs:607:45: macro "sv_setsv_flags" passed 4 arguments, but takes just 3
> IMAP.xs: In function `XS_Cyrus__IMAP__send':
> IMAP.xs:607: `sv_setsv_flags' undeclared (first use in this function)
> IMAP.xs:607: (Each undeclared identifier is reported only once
> IMAP.xs:607: for each function it appears in.)
> IMAP.xs:610:47: macro "sv_setsv_flags" passed 4 arguments, but takes just 3
> make: *** [IMAP.o] Error 1
> I found some information on the cvs mailing list, but seem that when was changed
> the function Perl_sv_setsv_flags with sv_setsv_flags the function was not
> declared correclty and the number of arguments are incorrectly.
> Putting back the old function I was able to compile it.
> Any idea ?

There was a patch I submitted for Cyrus IMAP 2.1.12, but it was regarding 
"Perl_sv_setsv", which was changed to "sv_setsv". It was for making code more 
portable over Perl versions, namely the old code worked on Perl 5.6.1, but 
refused to load on Perl 5.8.0.

"sv_setsv_flags" was not mentioned in our discussion and changes I proposed do 
get about there, "sv_setsv" expands to "Perl_sv_setsv_flags" on Perl-5.8.0, but 
the IMAP 2.1.12 passes 3 - not 4 arguments to that function.

Maybe there was a mistake in applying my patch on v2.2.


More information about the Info-cyrus mailing list