Attempting to build and test under Cygwin
David E Sigeti
sigeti at lanl.gov
Wed Jul 7 19:07:42 EDT 2004
Dear Kerberos Folks,
I am attempting to build and test MIT krb5 1.3.4 under Cygwin on a W2K
machine. The tests fail in the db2 utility. The output is (in part):
making check in util/db2/test...
make[3]: Entering directory
`/cygdrive/d/Apps/kerberos/krb5-1.3.4/local/build-cygwin/util/db2/test'
gcc -L../../../lib -g -O2 -Wall -Wmissing-prototypes
-Wcast-qual -Wcast-align -Wconversion -Wshadow -Wno-comment -pedantic -o
dbtest dbtest.o -ldb
Info: resolving _optarg by linking to __imp__optarg (auto-import)
Info: resolving _optind by linking to __imp__optind (auto-import)
srcdir=../../../../krb5-1.3.4/src/util/db2/test TMPDIR=. /usr/bin/sh
../../../../krb5-1.3.4/src/util/db2/test/run.test
Test 1: btree, hash: small key, small data pairs
Test 1: recno: small key, small data pairs
Test 2: btree, hash: small key, medium data pairs
Test 2: recno: small key, medium data pairs
Test 3: hash: small key, big data pairs
HASH: Out of overflow pages. Increase page size
dbtest: line 1118: put: No error
test3: hash: failed
In order to get db2 to compile, I had to fix an incompatibility between the
declaration of the function __kdb2_hash_open in the file db-int.h (the
function actually looks like __hash_open in that file because of some
preprocessor nonsense) and the definition of the function in hash.c. The
declaration gives certain argument types as int32_t while the definition
gives them as plain int. Changing either the declaration or the definition
allows the compilation to proceed but the tests fail as above. The diff
for the change I made is as follows:
diff -Naur original/krb5-1.3.4/src/util/db2/hash/hash.c
local/krb5-1.3.4/src/util/db2/hash/hash.c
--- original/krb5-1.3.4/src/util/db2/hash/hash.c 2001-07-09
06:06:36.000000000 -0600
+++ local/krb5-1.3.4/src/util/db2/hash/hash.c 2004-07-07
15:55:59.472323600 -0600
@@ -96,7 +96,7 @@
extern DB *
__kdb2_hash_open(file, flags, mode, info, dflags)
const char *file;
- int32_t flags, mode, dflags;
+ int flags, mode, dflags;
const HASHINFO *info; /* Special directives for create */
{
struct stat statbuf;
Does anyone have any suggestions as to how I should proceed?
Yours,
David Sigeti
---
Dr. David E. Sigeti
Phone: 505-667-9239
E-mail: sigeti at lanl.gov
Surface mail: MS-F645, Los Alamos National Laboratory,
Los Alamos, NM 87545 USA
More information about the Kerberos
mailing list