[OpenAFS] Trying to build aklog with Solaris 10 (x86), openafs-1.4.4, Sun Kerberos
Robert Sturrock
rns@unimelb.edu.au
Fri, 31 Aug 2007 21:27:49 +1000
Hi,
On Thu, Aug 30, 2007 at 09:14:41AM -0500, Douglas E. Engert wrote:
> >But the last stage of the build gives me (full log at bottom):
> >
> > Undefined first referenced
> > symbol in file
> > krb5_cc_get_principal aklog_main.o
> > ld: fatal: Symbol referencing errors. No output written to aklog
> > *** Error code 1
> > make: Fatal error: Command failed for target `aklog'
>
>
> The krb5.h as referred to in the above note was from OpenSolaris
> and appears to match Solaris 10 libs and has
>
> "#pragma ident "@(#)krb5.h 1.17 04/09/28 SMI":
>
> #define krb5_x(ptr,args) ((ptr)?((*(ptr)) args):(abort(),1))
>
> #define krb5_cc_get_principal(context, cache, principal)
> krb5_x((cache)->ops->get_princ,(context, cache, principal))
>
>
> So krb5_cc_get_principal should not end up as symbol in the object file.
>
> Look at the krb5.h you are using see what version, and how
> krb5_cc_get_principal is defined. Are you picking up some other
> krb5.h?
Thanks - that certainly explains the problem. Unfortunately the only krb5.h
I could find on opensolaris.org is quite a bit newer than the one you cite:
http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/gssapi/mechs/krb5/include/krb5.h
1 /*
2 * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
3 * Use is subject to license terms.
4 */
5
6 /* This is the prologue to krb5.h */
7 /* Unfortunately some of these defines are compiler dependent */
8 #ifndef _KRB5_H
9 #define _KRB5_H
10
11 #pragma ident "%Z%%M% %I% %E% SMI"
1272 krb5_error_code KRB5_CALLCONV
1273 krb5_cc_get_principal (krb5_context context, krb5_ccache cache,
1274 krb5_principal *principal);
So it doesn't seem to be straight #define anymore.
Is the older krb5.h source available elsewhere? (I googled, but couldn't
find any other :-().
Regards,
Robert.