Cross compiling FreeBSD
andrew.hotlab at hotmail.com
Thu Jan 15 17:15:04 PST 2009
> Date: Fri, 16 Jan 2009 10:09:49 +1100
> From: peterjeremy at optushome.com.au
> On 2009-Jan-15 01:12:03 +0000, Andrew Hotlab wrote:
>>Ok, so I think that in a production environment I should deploy one builder machine
>>for each target architecture I have to support on my network... I'm right?
> A single build machine can cross-build for multiple environments so you
> really only need one machine.
Yes it's true, but the limitation about UFS flags over NFS will force me to make some
manual operations and, even if I'll successfully script them, it will turn to increase the
"total cost" of that solution... so I'd prefer to have a build machine for each supported
Tier1 architecture, if this can let me "sleep better at night". I don't consider this a big
issue: after all, I feel the need of a builder machine because I have a lot of physical
machines to update... I can surely dedicate a couple of them (maybe a single amd64
in a dual-boot scenario with both i386 and amd64 FreeBSD versions)! :)
>>One last question: I would expect the same issues if I wish to to support many
>>FreeBSD releases running of one single type of architecture? (i.e.: both builder
>>and targets are amd64 machines, but I run RELENG_7 on the builder and
>>RELENG_6_4 and RELENG_7_1 on the targets)
> In general, backward compatibility is supported, so a world built on a
> RELENG_7 box should be able to be installed by a RELENG_7_1 target
> (though not by a RELENG_6_4 target). And you can run into he same
> problem with different i386 variants - if your build machine is built
> with (eg) P4 options than a generic world built by that box cannot be
> installed by (eg) a P2 due to instruction differences.
So I have to experiment a little to better understand what can be safely done
and what it would be "at risk". Maybe if worst comes to worst I'll have to maintain
a builder for each single architecture and major FreeBSD branch. It could be
not impossible if I'll decide to support legacy releases only on older i386 hardware.
Thank you so much for your help!
Invite your mail contacts to join your friends list with Windows Live Spaces. It's easy!
More information about the freebsd-i386