Date: Tue, 15 Feb 2005 21:55:17 +0200 From: Ruslan Ermilov <ru@freebsd.org> To: freebsd-amd64@freebsd.org Subject: Re: Cross compiling for i386 Message-ID: <20050215195517.GA17904@ip.net.ua> In-Reply-To: <20050215141155.GA29160@gattaca.yadt.co.uk> References: <20050215141155.GA29160@gattaca.yadt.co.uk>
next in thread | previous in thread | raw e-mail | index | archive | help
--FL5UXtIhxfXey3p5 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Feb 15, 2005 at 02:11:55PM +0000, David Taylor wrote: > I've recently purchased an AMD Athlon 64 3500+ with an MSI K8T Neo2 > motherboard, and FreeBSD seems to work quite well with it. Other than th= e=20 > re0 NIC's problems with hardware checksumming for UDP. Also I can't > get make build32 to complete without compiler errors, but that's not > critical for now. >=20 > On to the main point of this e-mail: >=20 > I also have an i386 workstation, which is significantly slower at building > world. I tried to cross-build the world on the amd64 box, then install it > over an NFS mount. Eventually, I managed to persuade it to build and > install, but it's not really a process I'd like to repeat every time I > update... >=20 > I managed to eventually complete a single build/install world cycle by do= ing > something like: >=20 > <amd64 box>$ cd /usr/src; make buildworld TARGET_ARCH=3Di386 > <i386 box> $ mount <amd64>:/usr/src /usr/src > <i386 box> $ mount <amd64>:/usr/obj /usr/obj > <i386 box> $ make installworld >=20 > This however had a few problems. Running installworld caused the i386 box > to attempt to write to /usr/src, due to newvers.sh, so I needed to mount > /usr/src rw. Also the built objects appeared to be in /usr/obj/i386, whi= lst > installworld was looking at /usr/obj. >=20 > Then, installworld wanted i386 tools to install with, so I ended up trying >=20 > make _worldtmp _legacy _bootstrap-tools _build-tools _cross-tools >=20 > I'm not sure they were _all_ required, but eventually it completed a > installworld. But not before I did manually copied ls and dd into > $INSTALLTMP. btxld also failed to compile for some reason (i.e. it wasn't > built, no errors) worked correctly when manually built. >=20 > The only problem I had with the resulting world was the installed locales > in /usr/share/locale/ were invalid (32 vs 64 bit field somewhere?), and > fortune coredumped when ran. That was fixed easily enough by recompiling > libc and fortune on the i386 box. >=20 > Is this supposed to be possible/supported? And does anyone have any ideas > how to make it work more automatically? >=20 No, this is not supported at all. What's supported is mounting i386's /, /usr, and /var onto /mnt, /mnt/usr, and /mnt/var, and doing the installworld with DESTDIR=3D/mnt from amd64. Cheers, --=20 Ruslan Ermilov ru@FreeBSD.org FreeBSD committer --FL5UXtIhxfXey3p5 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.6 (FreeBSD) iD8DBQFCElOlqRfpzJluFF4RAt3+AJ97oUfSbZ9PRHtQh28g0XLi2ZOVbACeKDMe uhHtK5U62kWzlrxeq3FPEKg= =3YXx -----END PGP SIGNATURE----- --FL5UXtIhxfXey3p5--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050215195517.GA17904>