1833024 Members
2319 Online
110049 Solutions
New Discussion

CYRUS IMAP make problem

 
Pete Hakesley
Advisor

CYRUS IMAP make problem

I am using a RP3440-4 running HP-UX 11.11 with latest gcc compiler. I have installed Berkeley DB 4 and managed to finally get CYRUS configure to run. I now have a problem with the make all CFLAGS=-O as it outputs the following problem.

make all CFLAGS=-O
### Making all in /opt/iexpress/cyrusimap/src/cyrus-imapd-2.2.12/man
### Making all in /opt/iexpress/cyrusimap/src/cyrus-imapd-2.2.12/et
### Making all in /opt/iexpress/cyrusimap/src/cyrus-imapd-2.2.12/lib
gcc -c -I.. -I/usr/local/BerkeleyDB.4.5/include -I../et -DHAVE_CONFIG_H -fPIC -g -O2 \
libconfig.c
In file included from libconfig.h:47,
from libconfig.c:58:
imapopts.h:181: error: array type has incomplete element type
*** Error exit code 1

Stop.
*** Error exit code 1

Stop.

I think this might be a problem with GCC e.g. they way cyrus is defining the array. Does anyone know how to fix this.

P.s. Cyrus version is 2.2.12

Thanks,
Pete
5 REPLIES 5
Hemmetter
Esteemed Contributor

Re: CYRUS IMAP make problem

Hi Pete

Have a look at:
https://bugzilla.andrew.cmu.edu/show_bug.cgi?id=2681

Hope it helps.



rgds
HGH
Pete Hakesley
Advisor

Re: CYRUS IMAP make problem

Hemetter,

Thanks I did find this bugzilla - but frankly I have to say "It's all greek to me" I don't understand what I need to do. Hope you can help me.

Pete
Andrew Merritt_2
Honored Contributor

Re: CYRUS IMAP make problem

Hi Pete,
Just going on that report, with no actual experience of doing it, what it is saying is that you need to edit the imapopts.h file, and

delete line 181
insert at line 238:
extern struct imapopt_s imapopts[];

(Just before the line:
#endif /* INCLUDED_IMAPOPTIONS_H */
)

Hope this helps.

Andrew
Hemmetter
Esteemed Contributor

Re: CYRUS IMAP make problem

Hi Pete

From bugzilla:

Basicly new gcc don't like usage before declaration, this patch just moves order of one line in config2header.

So it is quiet simple take the line
"extern struct imapopt_s imapopts[];"
and insert it some lines later.


Either in imapopts.h ( afer running "configure" ). Move the line from linenumber 181 to line 238.


or



in config2header ( before running "configure" ). Move from line 214 to line 260

or apply patchfile attached in bugzilla https://bugzilla.andrew.cmu.edu/attachment.cgi?id=356 and rerun "configure".


rgds
HGH







PeterWolfe
Respected Contributor

Re: CYRUS IMAP make problem

Pete,

A precompiled/ready-to-go version of Cyrus IMAP
is available as part of Internet Express:

http://h20293.www2.hp.com/portal/swdepot/displayProductInfo.do?productNumber=HPUXIEXP1111