[OpenAFS] openafs 1.2.7 - mandrake9.0

Derek Atkins openafs-info@openafs.org
03 Oct 2002 12:49:42 -0400


Please CC your responses to the list.

trax <traxtopel@HotPOP.com> writes:

> I am running configure with
> 
> ./configure --prefix=/usr --with-krb5=/usr \
> --with-afs=/usr/src/RPM/BUILD/openafs-1.2.7/i386_linux24/dest

That LOOKS reasonable, however...

> Which corresponds to what is shown in the rh7.3 spec.
> Any further ideas?

What's going on is that configure is looking in the default link-path
before it tries the --with-krb5= setting.  Because kerberos is in the
default link-path, it is finding it before it puts in a -L%{krb5lib}.
This is an artifact of AC_FIND_LIB and I know of no "correct" workaround.

You can try running this command to effect a workaround in your case:

        env LIBS=-L/usr ./configure ....

-derek

> On Thu, 2002-10-03 at 16:55, Derek Atkins wrote:
> > trax <traxtopel@HotPOP.com> writes:
> > 
> > > gcc  -o aklog aklog.o aklog_main.o aklog_param.o krb_util.o
> > > linked_list.o  adderrtable.o -lkrb524  
> > > -L/usr/src/RPM/BUILD/openafs-1.2.7/openafs-krb5-1.3/src/../../i386_linux24/dest//lib -L/usr/src/RPM/BUILD/openafs-1.2.7/openafs-krb5-1.3/src/../../i386_linux24/dest//lib/afs -lsys -lprot -lubik -lauth -lrxkad -lrx -llwp -ldes -lsys /usr/src/RPM/BUILD/openafs-1.2.7/openafs-krb5-1.3/src/../../i386_linux24/dest//lib/afs/util.a -lresolv  -lkrb5 -lk5crypto -lcom_err
> > > /usr/src/RPM/BUILD/openafs-1.2.7/openafs-krb5-1.3/src/../../i386_linux24/dest//lib/afs/libcom_err.a(error_msg.o): In function `add_to_error_table':
> > > error_msg.o(.text+0x220): multiple definition of `add_to_error_table'
> > > adderrtable.o:/usr/src/RPM/BUILD/openafs-1.2.7/openafs-krb5-1.3/src/adderrtable.c:31: first defined here
> > > /usr/bin/ld: Warning: size of symbol `add_to_error_table' changed from
> > > 16 to 49 in
> > > /usr/src/RPM/BUILD/openafs-1.2.7/openafs-krb5-1.3/src/../../i386_linux24/dest//lib/afs/libcom_err.a(error_msg.o)
> > > collect2: ld returned 1 exit status
> > > make: *** [aklog] Error 1
> > 
> > [configure snipped snipped]
> > 
> > > I have tried recompiling with gcc2.96 aswell as 3.2, both give the same
> > > result.
> > 
> > The problem is clearly a redefinition of add_to_error_table().  The
> > question is why this is happening.  Your configure snippet did not
> > show anything interesting.
> > 
> > This doesn't happen to me on any of my RH builds.  The reason is that
> > on my RH system it's pulling in /usr/kerberos/lib/libcom_err.so
> > instead of .../lib/afs/libcom_err.a!  So the problem is how you've
> > changed the build process due to kerberos living in /usr instead of
> > /usr/kerberos.  You need to keep the -L/usr (as opposed to
> > -L/usr/kerberos) early in the link path so it pulls in the "right"
> > com_err library.
> > 
> > -derek
> > 
> > -- 
> >        Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
> >        Member, MIT Student Information Processing Board  (SIPB)
> >        URL: http://web.mit.edu/warlord/    PP-ASEL-IA     N1NWH
> >        warlord@MIT.EDU                        PGP key available
> 
> 
> 

-- 
       Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
       Member, MIT Student Information Processing Board  (SIPB)
       URL: http://web.mit.edu/warlord/    PP-ASEL-IA     N1NWH
       warlord@MIT.EDU                        PGP key available