Opened 17 years ago

Closed 16 years ago

#146 closed task (fixed)

Address using chroot to build ix86 from i686 or x86_64

Reported by: Joe Ciccone Owned by: Joe Ciccone
Priority: major Milestone: CLFS Standard 1.1.0
Component: BOOK Version: CLFS Standard 1.1.0
Keywords: Cc:

Description

This probably holds true for other architectures too, but it's not seen as much. The target triplet of the final system is determined by config.guess, not CLFS_TARGET. This is probably a minor misconception that will cause people grief if they were to try to build a i686 machine from a x86_64 or some similar scenario where the host architecture can execute the target architecture but the target architecture is not compatible with the host architecture. Quickest way around it is with a uname hack. Ex, the one at: http://cross-lfs.org/~jciccone/uname_hack-20071212.tar.bz2 . Or you can follow the boot method.

Change History (5)

comment:1 by laxy, 16 years ago

Well, if only I had seen this before building for 486 on X64 :p

What I did was use setarch i486 before env -i at going into chroot, which made it think it was a 686, and then used --build=i486-pc-linux-gnu on every package. Bit more work, but it worked though.

comment:2 by Joe Ciccone, 16 years ago

setarch is without a doubt the best path to use. Util-Linux-NG provides setarch. We do build a select few items there. We could add setarch for the hosts that don't provide it.

comments?

comment:3 by Joe Ciccone, 16 years ago

Well, I found one problem with setarch, It will only set the target to i686, not i486 or i586 etc... This can be a problem if the target system you're building for is a i486 compatible. I would have to recommend the uname_hack and then mention setarch aswell.

comment:4 by Joe Ciccone, 16 years ago

Owner: changed from clfs-commits@… to Joe Ciccone

comment:5 by Joe Ciccone, 16 years ago

Resolution: fixed
Status: newclosed

This pesky bugger is finally closed in r3968. Someone to proof read the page would be nice.

Note: See TracTickets for help on using tickets.