Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 14 Jan 2009 22:43:09 -0600
From:      Brooks Davis <brooks@freebsd.org>
To:        Andrew Reilly <andrew-freebsd@areilly.bpc-users.org>
Cc:        freebsd-arch@freebsd.org, freebsd-i386@amd.org, freebsd-amd64@freebsd.org, Andrew Hotlab <andrew.hotlab@hotmail.com>
Subject:   Re: Cross compiling FreeBSD
Message-ID:  <20090115044309.GA72611@lor.one-eyed-alien.net>
In-Reply-To: <20090115031847.GA52343@duncan.reilly.home>
References:  <COL112-W14559CEDAEB8C5373A03B4F6D60@phx.gbl> <20090114211616.GC16116@server.vk2pj.dyndns.org> <20090115031847.GA52343@duncan.reilly.home>

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

--5mCyUwZo2JvN/JJP
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Jan 15, 2009 at 02:18:47PM +1100, Andrew Reilly wrote:
> On Thu, Jan 15, 2009 at 08:16:17AM +1100, Peter Jeremy wrote:
> > This won't work because install{world,kernel} uses programs (under
> > /usr/obj) that were built to run on the build system (amd64 in
> > your case) and so won't run on the target (i386) system.
> >=20
> > The supported approach is to NFS mount the target machines onto the
> > build machine and run "make DESTDIR=3D/mount/point install{world,kernel=
}"
> > on the build machine.  Note that this will report errors since NFS
> > cannot handle UFS flags - you will need to manually remove/add schg fla=
gs.
>=20
> Is there any reason (apart from using more space on the build
> machine) not to install to a DESTDIR (not /) on the build
> machine, and then tar/pax/cpio that tree across to the client
> system?  Presumably something like that must be done for the
> distribution builds that go into making the CD and DVD images.

This should work just fine.  I use installs to DESTDIR to build images to be
run at NFS root file systems.

> NetBSD has (had? it's been a while since I looked) a cool
> mechanism that allowed the whole tree to be built (and
> "installed" to a DESTDIR) without root permissions, using a
> variation on install that copied the file as the running user
> and recorded the intended user/group/mod/flags in an mtree file.
> Then a subsequent task created a tarball that contained the file
> contents and the mtree permissions, all as a non-root user.  So
> you don't even need to muck about with root-over-nfs issues for
> deployment: just log into the client and untar the distribution
> over the network (as root).  Very, very neat, IMO.  I used to
> build embedded i386 NetBSD installations on my amd64 FreeBSD
> system that way without much in the way of trouble.  Haven't had
> to do it for a while, though, so perhaps it's all changed.  I
> wouldn't hate to discover that FreeBSD can do that too,
> though...

We don't have this yet, but lots of people would like to see this (just
not quite enough to do it yet :).

-- Brooks

--5mCyUwZo2JvN/JJP
Content-Type: application/pgp-signature
Content-Disposition: inline

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

iD8DBQFJbr7dXY6L6fI4GtQRAgqSAJwPebbKBrXyApQ+0U7Vudbqh29iWwCeIg9H
URW9B8dwCno/i5JjU8YaY2o=
=OwxX
-----END PGP SIGNATURE-----

--5mCyUwZo2JvN/JJP--



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