[1878] in Kerberos_V5_Development
On libdb and shared libraries....
daemon@ATHENA.MIT.EDU (epeisach@MIT.EDU)
Sun Oct 27 00:30:42 1996
From: epeisach@MIT.EDU
Date: Sun, 27 Oct 1996 00:30:10 -0400
To: krbdev@MIT.EDU
I am comming up on a problem under DEC Unix 4.0a....
In DEC's infinite glory, they install libdb.{so.a} on their system. This
libdb is missing the dbm interfaces.
So what's the problem with this you may ask.... Well, normally, this
would not be a problem - we are linking against our out libdb.a - so we
should win. Well, you see, DEC's loader has this neat feature. When you
request a library - it will search through you -L paths for a shared
library by that name and then a static library.
We of course, do not include a shared libdb and therefore, one links in
the shared library which does not do what we want. (side note - this was
detected because the libkdb fallback mechanism to .pag & .dir files does
not work when destroying databases).
Recourses:
a) Add in special flags to the library link line to link db as static.
b) Rename libdb.a to libdb2.a - we are talking version two of the
library
c) Create a symlink from lib/libdb2.a -> lib/libdb.a
All require a slight change to aclocal.m4 - so no biggy. I prefer either
options (b) or (c). Option (c) is the easiest - and mucks less with the
util/db2 directory heirarchy.
Thoughts? Comments?
Ezra