Cross compiling FreeBSD

Brooks Davis brooks at
Wed Jan 14 21:07:37 PST 2009

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.
> > 
> > The supported approach is to NFS mount the target machines onto the
> > build machine and run "make DESTDIR=/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 flags.
> 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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url :

More information about the freebsd-arch mailing list