Skip site navigation (1)Skip section navigation (2)
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>