Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 15 Jan 2013 16:46:01 -0800
From:      Steve Kargl <sgk@troutmask.apl.washington.edu>
To:        Glen Barber <gjb@freebsd.org>
Cc:        freebsd-current@freebsd.org
Subject:   Re: Missing compile_et and kerberos breaks buildworld
Message-ID:  <20130116004601.GA18747@troutmask.apl.washington.edu>
In-Reply-To: <20130115234439.GA1313@glenbarber.us>
References:  <20130115233525.GA18192@troutmask.apl.washington.edu> <20130115234439.GA1313@glenbarber.us>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Jan 15, 2013 at 06:44:39PM -0500, Glen Barber wrote:
> On Tue, Jan 15, 2013 at 03:35:25PM -0800, Steve Kargl wrote:
> > It seems that buildworld depends on the existence of
> > /usr/bin/compile_et if one wants to build WITH_KERBEROS
> > on a system that has never had Kerberos support.  I
> > discovered this issue when des@ removed the NOFOO and
> > NO_FOO options, and the NO_KERBEROS="YES" in my
> > /etc/make.conf was neutered.  The system in question
> > has never had kerneros installed.  One can emulate
> > the problem as follows:
> > 
> 
> For what it is worth, reverting the removal of NO_FOO, et. al, will not
> fix your issue.

Actually, it would because the NO_KERBEROS="YES" in /etc/make.conf
would bypass building kerberos. :-)  And yes, I've changed NO_KERBEROS
to WITHOUT_KERBEROS and buildworld survives.  I'm now looking into
just how broken is bootstrapping kerberos.

> I ran into this several months ago, and found out "the
> hard way" that many of our ports require kerberos, even if they do not
> advertise it - so building without kerberos on the system would fail.
> 
> I started digging into it, and found what you found - compile_et does
> not get built prior to building the kerberos bits.

Thanks for confirming my fears.

> It actually gets quite worse from there.

Yep. :(
I just hit

cc -O2 -pipe -march=opteron -DLINEMODE -DUSE_TERMIO -DDIAGNOSTICS -DOLD_ENVIRON  -DENV_HACK -DSTREAMSPTY -DINET6 -I/usr/src/libexec/telnetd/../../contrib/telnet -DAUTHENTICATION -DENCRYPTION -DKRB5 -DFORWARD -Dnet_write=telnet_net_write -std=gnu99 -Qunused-arguments -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function -Wno-conversion -Wno-switch -Wno-switch-enum  -o telnetd global.o slc.o state.o sys_term.o telnetd.o termstat.o utility.o authenc.o -lutil -ltermcap /usr/obj/usr/src/libexec/telnetd/../../lib/libtelnet/libtelnet.a -lmp -lcrypto -lcrypt -lpam -lkrb5 -lhx509 -lasn1 -lroken -lcom_err
/usr/obj/usr/src/tmp/usr/lib/libroken.so: undefined reference to `unvis@FBSD_1.0cc: error: linker command failed with exit code 1 (use -v to see invocation)
*** [telnetd] Error code 1

>  I do not recall the details
> off-hand, but I recall doing 'make obj all install' in somewhat this
> order:
> 
>  - secure/
>  - include/
>  - kerberos5/
>  [some steps may be missing]

Thanks for a possible roadmap.  

-- 
Steve



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130116004601.GA18747>