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