RELEASE_6 -> RELEASE_8

Mark Andrews marka at isc.org
Mon Jan 31 04:40:49 UTC 2011


Mark Andrews writes:
> 
> In message <4D46119F.5060101 at sentex.net>, Mike Tancsa writes:
> > On 1/30/2011 6:45 PM, Mark Andrews wrote:
> > > 	I was trying to upgrade a machine from RELEASE_6 (latest)
> > > 	to RELEASE_8 (latest) via source.  I was unable to get
> > > 	make buildworld to complete.
> > 
> > Strange, I have done a number of machines going from RELENG_6, RELENG_7
> > and then RELENG_8 without too much issue.  The ports can be a bit
> > problematic, but of the half dozen or so I have done, it hasnt been an
> > issue.  Were you using a custom kernel, or GENERIC as defined from each
> > of the branches ?
> 
> It's the double release jump that doesn't work.  Looking at 7.x the
> headers needed are installed in /usr/include.  Similarly 7.x's gcc
> has the symbol but doesn't turn on the compiler flags which use it.
> Basically RELENG_8 is not completely building against itself.  Trying
> to go from 6.x to 8.x is showing some of places where the new OS
> doesn't build against itself.
> 
> This was with GENERIC for all builds and almost no ports installed.

The following Makefiles needed to be modified to add 
-I${.CURDIR}/../../../lib/libelf and/or -I${.CURDIR}/../../../sys.

/usr/release8/src/cddl/usr.bin/sgsmsg/Makefile lib/libelf
/usr/release8/src/cddl/lib/libctf/Makefile lib/libelf sys
/usr/release8/src/cddl/usr.bin/ctfconvert/Makefile lib/libelf sys
/usr/release8/src/cddl/usr.bin/ctfmerge/Makefile sys

e.g.

CFLAGS+=        -I${.CURDIR}/../../../sys/cddl/compat/opensolaris \
                -I${.CURDIR}/../../../cddl/compat/opensolaris/include \
                -I${.CURDIR}/../../../lib/libelf \
                -I${.CURDIR}/../../../sys \
                -I${OPENSOLARIS_USR_DISTDIR} \
                -I${OPENSOLARIS_SYS_DISTDIR} \
                -I${OPENSOLARIS_USR_DISTDIR}/head \
                -I${OPENSOLARIS_USR_DISTDIR}/tools/ctf/common \
                -I${OPENSOLARIS_USR_DISTDIR}/tools/ctf/cvt \
                -I${OPENSOLARIS_SYS_DISTDIR}/uts/common

"make make" is also needed for 6.x -> 8.x so that should be
added to UPDATING.

The build will then run until stopping in libexec/atrun with
/usr/release8/usr/release8/src/tmp/usr/lib/libpam.so: undefined reference to `__stack_chk_fail_local'

-- 
Mark Andrews, ISC
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742                 INTERNET: marka at isc.org


More information about the freebsd-stable mailing list