Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Aug 2004 19:44:42 +0300
From:      Ruslan Ermilov <ru@freebsd.org>
To:        Christian Hiris <4711@chello.at>
Cc:        freebsd-current@freebsd.org
Subject:   Re: Upgrade to 5.3-BETA1: make installkernel - Stop in /usr/src/sys/modules
Message-ID:  <20040824164442.GE37217@ip.net.ua>
In-Reply-To: <200408241641.20389.4711@chello.at>
References:  <200408241641.20389.4711@chello.at>

next in thread | previous in thread | raw e-mail | index | archive | help

--6e7ZaeXHKrTJCxdu
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Tue, Aug 24, 2004 at 04:40:58PM +0200, Christian Hiris wrote:
> When i upgraded one of my systems from
> 5.2-CURRENT FreeBSD 5.2-CURRENT #1: Sat May 29 14:14:06 CEST 2004    =20
> admin@matrix010.matrix.net:/usr/obj/usr/src/sys/MATRIX001  i386
> to=20
> 5.3-BETA1 FreeBSD 5.3-BETA1 #0: Mon Aug 23 16:30:40 CEST 2004    =20
> admin@matrix010.matrix.net:/usr/obj/usr/src/sys/MATRIX001  i386
> "make installkernel" fails during module installation. =20
>=20
> The directories /usr/src and /usr/obj were NFS-mounted on this machine. =
=20
>=20
We don't, strictly speaking, support this type of installation.
We only support it if build host *exactly* matches the install
host, read: it's the same arch, CPU, and it's running the same
__FreeBSD_version world and kernel.

What happens here is that your build machine has newer make(1)
binary that understand the `+' modifier.  The install machine
has an older make(1).  You can try to overcome this problem
by doing: make installkernel -DALWAYS_CHECK_MAKE, but: no
guarantees it will work (I don't know how different your build
and install hosts are), and you'll have to mount /usr/obj
read-write, for this to work.

> matrix001# cd /usr/src
> matrix001# make installkernel
> --------------------------------------------------------------
> >>> Making hierarchy
> --------------------------------------------------------------
> cd /usr/src;  MAKEOBJDIRPREFIX=3D/usr/obj  MACHINE_ARCH=3Di386  MACHINE=
=3Di386 =20
> CPUTYPE=3D  GROFF_BIN_PATH=3D/usr/obj/usr/src/i386/legacy/usr/bin =20
> GROFF_FONT_PATH=3D/usr/obj/usr/src/i386/legacy/usr/share/groff_font =20
> GROFF_TMAC_PATH=3D/usr/obj/usr/src/i386/legacy/usr/share/tmac=20
> PATH=3D/usr/obj/usr/src/i386/legacy/usr/sbin:/usr/obj/usr/src/i386/legacy=
/usr/bin:/usr/obj/usr/src/i386/legacy/usr/games:/usr/obj/usr/src/i386/usr/s=
bin:/usr/obj/usr/src/i386/usr/bin:/usr/obj/usr/src/i386/usr/games:/sbin:/bi=
n:/usr/sbin:/usr/bin=20
> make -f Makefile.inc1 hierarchy
> cd /usr/src/etc;                make distrib-dirs
> mtree -eU  -f /usr/src/etc/mtree/BSD.root.dist -p /
> mtree -eU  -f /usr/src/etc/mtree/BSD.var.dist -p /var
> mtree -eU  -f /usr/src/etc/mtree/BSD.usr.dist -p /usr
> mtree -eU  -f /usr/src/etc/mtree/BSD.include.dist  -p /usr/include
> cd /; rm -f /sys; ln -s usr/src/sys sys
> cd /usr/share/man/en.ISO8859-1; ln -sf ../man* .
> cd /usr/share/man;  set - `grep "^[a-zA-Z]" /usr/src/etc/man.alias`;  whi=
le=20
> [ $# -gt 0 ] ;  do  rm -rf "$1";  ln -s "$2" "$1";  shift; shift;  done
> cd /usr/share/openssl/man;  set - `grep "^[a-zA-Z]" /usr/src/etc/man.alia=
s`; =20
> while [ $# -gt 0 ] ;  do  rm -rf "$1";  ln -s "$2" "$1";  shift; shift;  =
done
> cd /usr/share/openssl/man/en.ISO8859-1; ln -sf ../man* .
> cd /usr/share/nls;  set - `grep "^[a-zA-Z]" /usr/src/etc/nls.alias`;  whi=
le=20
> [ $# -gt 0 ] ;  do  rm -rf "$1";  ln -s "$2" "$1";  shift; shift;  done
>=20
> --------------------------------------------------------------
> >>> Installing kernel
> --------------------------------------------------------------
> cd /usr/obj/usr/src/sys/MATRIX001;  MAKEOBJDIRPREFIX=3D/usr/obj =20
> MACHINE_ARCH=3Di386  MACHINE=3Di386  CPUTYPE=3D =20
> GROFF_BIN_PATH=3D/usr/obj/usr/src/i386/legacy/usr/bin =20
> GROFF_FONT_PATH=3D/usr/obj/usr/src/i386/legacy/usr/share/groff_font =20
> GROFF_TMAC_PATH=3D/usr/obj/usr/src/i386/legacy/usr/share/tmac=20
> PATH=3D/usr/obj/usr/src/i386/legacy/usr/sbin:/usr/obj/usr/src/i386/legacy=
/usr/bin:/usr/obj/usr/src/i386/legacy/usr/games:/usr/obj/usr/src/i386/usr/s=
bin:/usr/obj/usr/src/i386/usr/bin:/usr/obj/usr/src/i386/usr/games:/sbin:/bi=
n:/usr/sbin:/usr/bin =20
> make KERNEL=3Dkernel install
> thiskernel=3D`sysctl -n kern.bootfile` ;  if [ "`dirname=20
> "$thiskernel"`" !=3D /boot/kernel ] ; then  chflags -R noschg /boot/kerne=
l ; =20
> rm -rf /boot/kernel ;  else  if [ -d /boot/kernel.old ] ; then  chflags -=
R=20
> noschg /boot/kernel.old ;  rm -rf /boot/kernel.old ;  fi ; =20
> mv /boot/kernel /boot/kernel.old ;  sysctl=20
> kern.bootfile=3D/boot/kernel.old/"`basename "$thiskernel"`" ;  fi
> mkdir -p /boot/kernel
> install -p -m 555 -o root -g wheel kernel /boot/kernel
> cd /usr/src/sys/modules;=20
> MAKEOBJDIRPREFIX=3D/usr/obj/usr/src/sys/MATRIX001/modules KMODDIR=3D/boot=
/kernel=20
> MACHINE=3Di386 KERNBUILDDIR=3D"/usr/obj/usr/src/sys/MATRIX001" make  inst=
all
> +for: not found
> *** Error code 127
>=20
> Stop in /usr/src/sys/modules.
> *** Error code 1
>=20
> Stop in /usr/obj/usr/src/sys/MATRIX001.
> *** Error code 1
>=20
> Stop in /usr/src.
> *** Error code 1
>=20
> Stop in /usr/src.
>=20
>=20
[...]

> Kernel and world are in sync, I did a "chflags -R noschg *" and "rm -rf *=
"=20
> in /usr/obj before i did the make buildworld and buildkernel. Yesterday I=
 did=20
> an upgrade from the same build on another machine, on which 5.3-BETA1 alr=
eady=20
> was installed - the upgrade went fine without the stop=20
> in /usr/src/sys/modules.=20
>   =20
> However, I could fix this by doing a reinstall of /usr/src/usr.bin/make b=
efore=20
> running the installkernel target.=20


Cheers,
--=20
Ruslan Ermilov
ru@FreeBSD.org
FreeBSD committer

--6e7ZaeXHKrTJCxdu
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.5 (FreeBSD)

iD8DBQFBK3B6qRfpzJluFF4RAhDyAKCK/745CEBRhWCr8ToRwKfhpgZ6GwCglJDv
QSQpCUXqA4L9ZjD8tT4yAJE=
=r/oF
-----END PGP SIGNATURE-----

--6e7ZaeXHKrTJCxdu--



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