[1577] in Kerberos-V5-bugs
Re: kerberos 5 under solaris
daemon@ATHENA.MIT.EDU (Theodore Ts'o)
Fri Jul 28 14:28:06 1995
Date: Fri, 28 Jul 1995 14:27:55 -0400
From: Theodore Ts'o <tytso@MIT.EDU>
To: tching@glenayre.com
Cc: marc@MIT.EDU, krb5-bugs@MIT.EDU
In-Reply-To: Thomas Ching []'s message of Fri, 28 Jul 1995 09:52:04 -0700,
<9507281652.AA06138@canopus.glenvcr>
Date: Fri, 28 Jul 1995 09:52:04 -0700
From: tching@glenayre.com (Thomas Ching [])
You were saying that Kerberos should figure out the O.S. and include the
/usr/include instead of /usr/ucbinclude, but it's not case on our system.
I am currently building Kerberos under solaris 2.3, but the configure
program figured out the system as "sun" (does that mean "sun 5.3" or
SunOS ??) and it went ahead with /usr/ucbinclude (ucbcc default
include).
Also, it linked with ucb libraries.
Don't use ucbcc!! Configure using the Sunsoft suncc, or the GNU GCC.
You don't want to use any vestige of UCB compatibility at all.
I'm not sure what you mean by the configure program figuring out the
system as "sun". The beginning of the configuration script it would
have said something like this:
CC=gcc
CCOPTS is -g -Wall
LD defaults to gcc
CPPOPTS defaults to
built in krb4 support
checking for working const... yes
checking for -lsocket... yes
checking for -lnsl... yes
checking for build host... checking host system type... sparc-sun-solaris2.3
^^^^^^^^^^^^^^^^^^^^
Solaris 2.3 is one of the our core development platforms for Kerberos
V5. So it should work with relatively little problems once you stop
trying to use UCB compatibility.
By the way, if I didn't use /usr/ucbinclude, I would hit a problem when
compile lib/krb5/ccache/file/fcc_maybe.c.
The compiler would come back and complain not finding the definition
of "LOCK_SH", "LOCK_EX", and "LOCK_UN" which are defined in the
ucbinclude files but not native solaris include file. I was wondering
that if this is the case, how do I compile the package with /usr/include
only ??
If you take a look at the source code, you will see that this file is
heavily conditionalized to support many different styles of file
locking. The configure script is reponsible for figuring out which type
of file locking your system actually supports. The problem with trying
to use ucbcc is that this confuses the configure tests which try to
figure out your system characteristics, so it tried to use some of the
#ifdef'ed code that only works on BSD systems. If you don't use ucbcc,
but use suncc or gcc, then configure will accurately be able to figure
out what Solaris *really* supports, and configure the #define's such
that the Kerberos tree will compile correctly.
- Ted