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