CVS 2.2 no longer compilable under Red Hat 7.3?

Jonathan Marsden jonathan at xc.org
Fri Jan 3 21:45:42 EST 2003


Something in CVS 2.2 changed since 26 Sept 2002 that apparently makes
for trouble compiling it under Red Hat 7.3.

(1) The first issue is probably just the a lack of a #include
<mkgmtime.h> before using a struct tm in lib/mkgmtime.c (make output
at end of message).  There is a similar omission (of #include
<gmtoff.h>) in lib/gmtoff_tm.c as well.  Why wouldn't a .c file
include its own .h file?  Must be an 'in progress' minor buglet.

(2) Hacking those in gets me slightly further, but then I get

    gcc -c -I..  -I/usr/include/et -I/usr/local/include -I/usr/include  -DHAVE_CONFIG_H -I. -I. -Wall -O2 -march=i386 -mcpu=i686 -fPIC \
    cyrusdb.c
    cyrusdb.c: In function `cyrusdb_init':
    cyrusdb.c:77: `FNAME_DBDIR' undeclared (first use in this function)
    cyrusdb.c:77: (Each undeclared identifier is reported only once
    cyrusdb.c:77: for each function it appears in.)
    make: *** [cyrusdb.o] Error 1

which I have not (yet?) figured out.  FNAME_DBDIR is defined in
acconfig.h but nowhere else.  Hacking its value (of "/db") into the
end of lib/cyrusdb.h gets me further... but I know that's a bad
approach!  Do I have an underlying autoconf or configure problem?

(3) Even then, I soon get something about MASTER_PIDFILE in master.c ...

Is CVS for 2.2 currently intentionally unusable?  If so, when is it
likely to become reasonably safe to grab and use once more?

Or, am I just being (even) more dense than usual?  If so, help getting
the current CVS tree to compile would be welcomed :-)

Thanks,

Jonathan

PS.  There is also an issue with the search for libdes failing if I
try to compile with Kerberos support, which I think is an older issue
that has returned to haunt me?  RH 7.3 lacks a libdes.a library, the
needed functions are in libdes425.a instead.  Looks like the configure
checks got stricter, and now break on RH 7.3, though in September they
worked OK?
------------------------------------------------------------------------

make[1]: Entering directory `/home/jonathan/cyrus-imapd-2.2/lib'
gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
acl.c
gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
assert.c
gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
bsearch.c
gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
charset.c
gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
glob.c
gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
retry.c
gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
util.c
gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
libcyr_cfg.c
gcc -c -I..   -I/usr/local/include  -DHAVE_CONFIG_H -I. -I. -Wall -g -O2 \
mkgmtime.c
mkgmtime.c: In function `tmcomp':
mkgmtime.c:102: dereferencing pointer to incomplete type
mkgmtime.c:102: dereferencing pointer to incomplete type
mkgmtime.c:103: dereferencing pointer to incomplete type
mkgmtime.c:103: dereferencing pointer to incomplete type
mkgmtime.c:104: dereferencing pointer to incomplete type
mkgmtime.c:104: dereferencing pointer to incomplete type
mkgmtime.c:105: dereferencing pointer to incomplete type
mkgmtime.c:105: dereferencing pointer to incomplete type
mkgmtime.c:106: dereferencing pointer to incomplete type
mkgmtime.c:106: dereferencing pointer to incomplete type
mkgmtime.c:107: dereferencing pointer to incomplete type
mkgmtime.c:107: dereferencing pointer to incomplete type
mkgmtime.c:100: warning: `result' might be used uninitialized in this function
mkgmtime.c: In function `mkgmtime':
mkgmtime.c:119: storage size of `yourtm' isn't known
mkgmtime.c:121: dereferencing pointer to incomplete type
mkgmtime.c:137: warning: implicit declaration of function `gmtime'
mkgmtime.c:137: warning: assignment makes pointer from integer without a cast
mkgmtime.c:119: warning: unused variable `yourtm'
mkgmtime.c:117: warning: `saved_seconds' might be used uninitialized in this function
make[1]: *** [mkgmtime.o] Error 1
make[1]: Leaving directory `/home/jonathan/cyrus-imapd-2.2/lib'
make: *** [all] Error 1




More information about the Info-cyrus mailing list