On Fri, Feb 11, 2011 at 02:34:02PM +0100, Jan Henrik Sylvester wrote:
> I am trying to build all ports that I have installed in an i386 chroot 
> environment on an amd64 machine. All work except for sysutils/cdrtools.
> 
> I have installed an i386 system to some directory, mounted a devfs to 
> the devfs subdirectory, set "MACHINE=i386 ; UNAME_p=i386 ; UNAME_m=i386" 
> and exported them, chrooted to the directory, and called 
> "/etc/rc.d/ldconfig start".
> 
> sysutils/cdrtools fails with many errors as it still builds for amd64.
> 
> Is this expected? Should I do more to get an i386 environment? (I have 
> tried to set ARCH and MACHINE_ARCH with no change.)
> 

Yes, that approach isn't expected to generally work for cross-building
ports for i386 on amd64. What is expected to work is compiling them in
an i386 environment on amd64 running a kernel with r210369/rev. 1.103
of sys/kern/kern_mib.c (r210855/rev. 1.98.2.5 for 8-STABLE) in place
so the i386 binaries act as if they are running on native i386 without
hacks like MACHINE, UNAME_* etc being set. The cdrtools port is known
to be buildable for i386 in an i386 jail on amd64 that way.

Marius

_______________________________________________
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"

Reply via email to