safe way to build i386 arch makeworld on amd64 arch?

Astrodog astrodog at gmail.com
Fri Apr 7 13:38:21 UTC 2006


On 4/7/06, Danny Braniss <danny at cs.huji.ac.il> wrote:
> > hello list,
> >
> > is there a save way to 'downgrade' an amd64 build system by using 'make world' ?
> >
> > e.g. just remove the CPUTYPE=opteron from the make.conf file and do a
> > build world/kernels install world/kernels ?
> >
> > of do we need to do some more for this?
> >
> > thanks in advance
> >
> > Regards
> > patrick
> >

To downgrade? Not realistically.

> you can, i do:
>         export MAKEOBJDIRPREFIX=/somwhersafe-i386
>         make TARGET_ARCH=i386 buildworld
> same for buildkernel, installworld/installkernel, and also you can specify
> a different DESTDIR=
>
> danny
>

That would certainly allow him to crosscompile an i386 kernel, and
world, but wouldn't have much effect on downgrading from AMD64 to
i386, since you run into a chicken or the egg problem with the kernel,
and world. (a 64-bit kernel does not play nice on a 32-bit world,
without some hacking around, and a 32-bit kernel does not play nice on
a 64-bit world), which makes it impossible to actually do both steps.

If you install the 32-bit kernel first, and reboot, the kernel won't
be able to run the 64-bit binaries. If you install the 32-bit world
first, the 64-bit kernel will become very, very sad, and won't let the
installation complete.

If you try to install the kernel, then the world without a reboot, you
have the same problem as installing the 32-bit world first, since even
with a 32-bit kernel installed, you're still RUNNING the 64-bit kernel
until you reboot.

There are actually ways to do this, but its almost always a bad idea.
Not to mention this will break any packages, or ports you're using
too, with the exception, perhaps, of Linux Compat.


More information about the freebsd-amd64 mailing list