pending/1122: problems building afs-krb5 1.3

seph@MIT.EDU seph at MIT.EDU
Mon Jun 24 21:08:04 EDT 2002


>Number:         1122
>Category:       pending
>Synopsis:       problems building afs-krb5 1.3
>Confidential:   yes
>Severity:       serious
>Priority:       medium
>Responsible:    gnats-admin
>State:          open
>Class:          sw-bug
>Submitter-Id:   unknown
>Arrival-Date:   Mon Jun 24 21:09:00 EDT 2002
>Last-Modified:
>Originator:
>Organization:
>Release:
>Environment:
>Description:
>How-To-Repeat:
>Fix:
>Audit-Trail:
>Unformatted:
I was just trying to build afs-krb5 on a solaris8 machine with a gnu
toolchain, and had a bunch of trouble. I got some help with jhutz, and
we (well, mostly him) concluded that there were probably some bugs, so
here's my trouble...

bash-2.03# uname -a
SunOS devsun 5.8 Generic_108528-11 sun4u sparc
  
I built krb5 with:
./configure --prefix=/opt/krb5 --with-cc=gcc --enable-shared

krb5 build and installed without any trouble.




I went to build afs-krb5, I tried:
./configure --prefix=/opt/openafs --with-cc=gcc   \
   --with-krb5=/opt/krb5 --with-afs=/opt/openafs

and it starts getting weird here. configure's stdout says

  checking directories for -lkrb524... found in /opt/krb5//lib
  checking directories for -lkdb5... not found

the config.log says:

  configure:1199: checking directories for -lkrb524
  configure:1225: gcc -o conftest   -I/opt/openafs/include  conftest.c  -lkrb524 -lkrb5 -lcrypto -lcom_err  -lsocket -lnsl 1>&5
  /usr/local/gnu/bin/ld: cannot find -lkrb524
   
  configure:1272: checking directories for -lkdb5
  configure:1298: gcc -o conftest   -I/opt/openafs/include  conftest.c  -lkdb5 -lkrb5 -lcrypto -lcom_err  -lsocket -lnsl 1>&5
  /usr/local/gnu/bin/ld: cannot find -lkdb5

I'm puzzled why it thinks the first is fine, but not the second. It
also seems somewhat wrong, that there's no -L/opt/krb5/lib in there.

If I add --with-ldopts='-L/opt/krb5/lib' to configure's command line,
stdout looks the same, but the config.log changes:

  configure:1199: checking directories for -lkrb524
  configure:1225: gcc -o conftest   -I/opt/openafs/include -L/opt/krb5/lib conftest.c  -lkrb524 -lkrb5 -lcrypto -lcom_err  -lsocket -lnsl 1>&5

  configure:1272: checking directories for -lkdb5
  configure:1298: gcc -o conftest   -I/opt/openafs/include -L/opt/krb5/lib conftest.c  -lkdb5 -lkrb5 -lcrypto -lcom_err  -lsocket -lnsl 1>&5
  /opt/krb5/lib/libkdb5.so: undefined reference to `kdb2_dbopen'

with a lot of help from jhutz, we determined that this is because
linking to libkdb5 also requires linking to krb5's private libdb,
which is only in the krb5 object directory. Playing around, trying to
get configure to include -ldb after -lkdb5, I discovered afs-krb5's
configure ignores the LIBS environmental varible.

I think something's a little weird in krb5, if it installs a library
I can't link to, and I think all sorts of things are weird in afs-krb5.

(zephyr traffic was to -c help -i afs-krb5 -r ATHENA.MIT.EDU)

seph




More information about the krb5-bugs mailing list