[289] in Kerberos-V5-bugs

home help back first fref pref prev next nref lref last post

Problem building release 5B2

daemon@ATHENA.MIT.EDU (Mike McIntyre)
Fri Feb 26 14:24:15 1993

From: mikey@sparky.itg.ti.com (Mike McIntyre)
To: krb5-bugs@Athena.MIT.EDU (V5 Kerberos Bug List)
Date: Fri, 26 Feb 1993 13:22:36 -0600 (CST)
Cc: shadow@marlowe.csc.ti.com

While attempting to do make world from the toplevel directory, the following has
occurred:

	cc -pipe -o kdb5_convert kdb5_convert.o -O   -L../../lib -lkdb5 -L../../lib -lkr
	b5 -lcrypto -L/mit/isode -lisode -L/mit/krb5/src/util/com_err -lcom_err  -lkdb -
	lkrb -ldes425   -L/usr/lib -ldl -lm
	ld: -lkdb: No such file or directory
	*** Error code 4
	make: Fatal error: Command failed for target `kdb5_convert'
	Current working directory /usr1/src/mit/kerberos/src/admin/convert
	*** Error code 1
	make: Fatal error: Command failed for target `all'
	Current working directory /usr1/src/mit/kerberos/src/admin
	*** Error code 1
	make: Fatal error: Command failed for target `all'



Additional Information
----------------------
Platform is Sun SPARCstation 2
OS is SunOS Release 4.1.2
Using the native C compiler.
Attempting to build Kerberos V, Beta 2

The following tar files were download from athena-dist.mit.edu
	krb5.des.B2.tar.Z 
	krb5.doc-interim.B2.tar.Z 
	krb5.src.B2.tar.Z


My <site.def> is as follows:
/**/# $Author: jfc $
/**/# $Id: site.def,v 5.43 1992/09/25 03:06:00 jfc Exp $
/**/#

/**/# site:  $XConsortium: site.def,v 1.21 89/12/06 11:46:50 jim Exp $

/*****************************************************************************
 *                                                                           *
 *			   SITE-SPECIFIC DEFINITIONS                         *
 *                                                                           *
 * Override any of the defaults in *.tmpl here.                              *
 *                                                                           *
 *                                                                           *
 * Make sure you check the following parameters:                             *
 *                                                                           *
 *     1.  HasLargeTmp                                                       *
 *     2.  All the manpage locations & suffixes                              *
 *     3.  All the binary install locations                                  *
 *                                                                           *
 * Note on using DESTDIR:  If you want to install into a scratch directory   *
 * but will eventually move the tree back to the root, compile with DESTDIR  *
 * blank and install with "make install DESTDIR=directory".                  *
 *                                                                           *
 *****************************************************************************/


/* General */
#define InstKmemFlag	-g kmem -m 2755
#define StripInstalledPrograms	YES
#define InstUidFlags	-o root -m 4755


/* Added by Mike McIntyre on Thursday February 25 13:05:47 CST 1993 */
#define sun
#define CompileEtCmd	/mit/krb5/src/util/com_err/compile_et
#define MkCmdsCmd    	/mit/krb5/src/util/ss/mk_cmds
#define PepsyCmd     	/mit/isode/isode-8.0/pepsy/xpepsy
#define ComErrLib 	-L/mit/krb5/src/util/com_err -lcom_err
#define SSLib			-L/mit/krb5/src/util/ss -lss
#define FilesToClean 	*.CKP *.ln *.BAK *.bak *.o core errs ,* *~ *.a .emacs_* tags TAGS make.log MakeOut foo*
#define ExtraLoadFlags	-L/usr/lib -ldl -lm	

/*
 * SET THESE PARAMETERS FIRST !!!
 */

/*
 * 1.  HasLargeTmp - if your /tmp space is less than a 1meg, you should
 * probably set this to NO
 */
#ifndef HasLargeTmp
#define HasLargeTmp YES
#endif

/*
 * 2. Man page locations & suffixes.
 */
/* AdminManSuffix: man page suffix for administrative programs */
#ifndef AdminManSuffix
#define AdminManSuffix 8
#endif
/* AdminMandir: manual page directory for administrative man pages */
#ifndef AdminMandir
#define AdminMandir $(KRB5ROOT)/man/man8
#endif

/* ServerManSuffix: man page suffix for server programs */
#ifndef ServerManSuffix
#define ServerManSuffix 8
#endif
/* ServerMandir: manual page directory for server man pages */
#ifndef ServerMandir
#define ServerMandir $(KRB5ROOT)/man/man8
#endif

/* ClientManSuffix: man page suffix for client programs */
#ifndef ClientManSuffix
#define ClientManSuffix 1
#endif
/* ClientMandir: manual page directory for client man pages */
#ifndef ClientMandir
#define ClientMandir $(KRB5ROOT)/man/man1
#endif

/*
 * 3. Binary program install areas.
 */
/* AdminBindir: binary install directory for administrative programs */
#ifndef AdminBindir
#define AdminBindir $(KRB5ROOT)/admin
#endif

/* ServerBindir: binary install directory for server programs */
#ifndef ServerBindir
#define ServerBindir $(KRB5ROOT)/sbin
#endif

/* ClientBindir: binary install directory for client programs */
#ifndef ClientBindir
#define ClientBindir $(KRB5ROOT)/bin
#endif

/* Libdir: install directory for kerberos libraries */
#ifndef Krb5Libdir
#define	Krb5Libdir $(KRB5ROOT)/lib
#endif

#ifndef Krb5Incdir
#define	Krb5Incdir $(KRB5ROOT)/include
#endif
/*****************************************************************************
 *                                                                           *
 *			       Build Parameters                              *
 *                                                                           *
 *****************************************************************************/

/*
 * If you want to use GCC, set HasGcc in the appropriate .cf files.
 */
#ifndef HasGcc
#define HasGcc NO
#endif

#ifdef SunArchitecture
#define	CcCmd cc -pipe
#endif

/* The -Z flag is a special loader flag at Athena to unmap page zero on
   some architectures that normally allow p0 references, e.g. VAX BSD.

   -T0x400000 has a similar effect on AIX 1.2

   Symbolic debugging is difficult on RT and PS/2 when this option is used. */
#if defined(AIXArchitecture) && OSMajorVersion == 1
#define	ExtraLoadFlags -T0x400000
#else
#if !defined(UltrixArchitecture) && !defined(AIXArchitecture) && !defined(SunArchitecture)
#define ExtraLoadFlags -Z
#endif
#endif

/* With gcc, use -g -O.  Otherwise use the default (-O). */
#if !defined(DefaultCDebugFlags) && HasGcc
#define DefaultCDebugFlags OptimizedCDebugFlags DebuggableCDebugFlags
#endif

#if HasNdbm
#define DbmLib
#else
#define DbmLib -ldbm
#endif

/* If you have the Hesiod software and libraries installed, and want to
   use it in some application programs, then turn these on.  If they're
   not turned on, they are left empty in Project.tmpl */
#define HesiodDefines -DHESIOD
#define HesiodLibs -lhesiod

#if 0
/* not yet in use, but maybe someday... */
/* If you have the Zephyr software and libraries installed, and want to
   use it in some application programs, then turn these on.  If they're
   not turned on, they are left empty in Project.tmpl.

   NOTE:  You must have Kerberos v4 in order to use Zephyr.
 */
#define ZephyrDefines -DZEPHYR
#define ZephyrLibs -lzephyr
#endif

#ifndef PS2Architecture
/* define IsodeLib to be what you pass to the loader to find the ISODE
   library.  This might want to be -lisode if you have it installed.
   IsodeDir is put into the 'make' variable ISODE. */

#define IsodeLib -L/mit/isode -lisode
#define IsodeDir /mit/isode

/* Re-define PepsyCmd if pepsy isn't in your search path. */

/* #define PepsyCmd $(ISODE)/@sys/bin/pepsy */
#endif

#define UseImakeInstalled /* -- turn on if you have imake installed */
#define UseMakedependInstalled /* -- turn on if you have makedepend installed */

/* #define Krb4ApplCompat*/ /* turn this on if you want selected applications to
			  work with both v4 & v5 code */
/* #define Krb4KDCCompat */ /* turn this on if you want the KDC to provide v4
			 tickets from a v5 database */
/* #define Krb4Includes <empty>	-- If you don't want to use our copy of the
   				   Kerberos V4 include files, set this to
				   an empty name, by using the /**/
/* 				   trick */
/* #define Krb4LibList -lquux  -- If -lkrb -ldes is NOT the right thing
   				  to get V4 libraries, define it here
				  to something else */
#define Krb4LibList

/* the following might want to be put into a specific architecture
   definition file */

/* #define HasVfprintf -- turn on if you have vfprintf/vsprintf in libc
   			  (might want to be in the architecture-specific
			   configuration file) */
/* #define HasVsyslog -- turn on if you have vsyslog in libc
   			  (might want to be in the architecture-specific
			   configuration file) */
/* #define HasStrdup -- turn on if you have strdup() in libc
   			  (might want to be in the architecture-specific
			   configuration file) */

/* alternate library search paths, if needed for some system libraries */

/* additional include paths, if needed, such as those needed
   to get special include files, like <ss/ss.h> or <com_err.h> */
#define	StandardIncludes -I/mit/krb5/src/util -I/mit/krb5/src/util/com_err \
			 -I/mit -I/mit/isode/h 				   \
			 -I/mit/krb5/src/lib/error_tables		   \
			 -I/mit/krb5/src/lib/asn.1

#if defined(AIXArchitecture) && OSMajorVersion == 3
#define	StandardDefines	-D_ALL_SOURCE
/* For all its flaws, gmake has one advantage over AIX make: it supports
   VPATH in the way the Kerberos config files want.   WARNING: if you combine
   RCS and VPATH with gmake will will probably lose.  */
#define MakeCmd gmake
.SUFFIXES:
.SUFFIXES: .et .c .h .o

#define Krb5Root	/mit/krb5/rsaix
#undef LdLibLocations
#define LdLibLocations -L/usr/athena/lib/shared -L/mit/krb5/rsaix/lib/shared
#endif

#ifdef UltrixArchitecture
#define	Krb5Root	/mit/krb5/decmips
#endif

#define	AthenaEnv YES		/* Define this if you are in the
				   athena environment.
				   No one else should define this.  */

/* Define this if you are building for multiple architectures or operating
   systems.  This tells the build where to look for the sources.  */
#ifndef UseInstalled
#define SourceTop /mit/krb5/src
#endif

#if defined(VaxArchitecture) || defined(RtArchitecture)
#ifdef HasGCC
#ifdef SourceTop
#define	STDCTopIncludes	-I$(SRCTOP)/include/stdc-incl
#else
#define	STDCTopIncludes	-I$(TOP)/include/stdc-incl
#endif
#endif /* HasGCC */
#endif

#ifdef UltrixArchitecture
#define MakeCmd gmake
#endif

#if defined(VaxArchitecture) && defined(UltrixArchitecture)
#undef STDCTopIncludes
#undef CcCmd
#define CcCmd gcc -pedantic -pipe -Wall -fpcc-struct-return
#define	OptimizedCDebugFlags -O3
#define DefaultCDebugFlags OptimizedCDebugFlags -g
#endif


Our take on the problem
-----------------------
It is asking for libkrb.a libkdb.a, neither of which we can find with the K5B2 release
of the product. We tried substituting in the libkrb5.a libkdb5.a for these but that
resulted in undefined external references. We have searched for these libraries in the
K5B2 release and are unable to find them. Have we missed some code somewhere?

Regards,

-----------------------------------------------------------------
                             '''''
                             \o^o/
                               |
                              \_/

                       Michael P. McIntyre
                    Software Design Engineer
                     Information Encyclopedia
                Distributed Information Services

6550 Chase Oaks Boulevard         Voice : (214) 575-2875
MS 8467                           FAX   : (214) 575-4826
Plano, Texas 75023                E-mail: mikey@lobby.ti.com

home help back first fref pref prev next nref lref last post