On Tue, May 29, 2007 at 08:00:01PM -0400, Joe Ciccone wrote: > > > This affects the chroot method of trunk. Lets say your host system is > x86_64-unknown-linux-gnu and CLFS_TARGET is set to i686-pc-linux-gnu. > The entire build of cross-tools and tools references the CLFS_HOST and > CLFS_TARGET variables. Once you chroot / boot into the final system, the > target triplet is determined by the output of config.guess. see > (/usr/share/automake-*/config.guess). config.guess looks at your current > system and makes it's best guess on a target tripplet. It refers to > uname for the machine type. If you're kernel is 64bit, uname -m will > report the machine type as x86_64. Which in turn will cause config.guess > to spew a 64bit target triplet. > > So, when you hit the glibc build for the final system. Glibc will think > it's building for x86_64-unknown-linux-gnu BUT! you build gcc to compile > for i686-pc-linux-gnu. Hence the headaches I mentioned earlier. > Thanks, I hadn't spotted the "I'm building on x86_64 and chrooting to i686" part of the story. OK, running a shell under linux32 is definitely the answer - on x86_64 and ppc64 (and possibly on others, using the debian diff) it makes the kernel claim to be 32-bit.
I've used it in the past to run a 64-bit kernel with 32-bit userspace on x86_64 (which allowed me to cross-compile and then chroot) and I use it when I'm building ppc from ppc64. Ken -- das eine Mal als Tragödie, das andere Mal als Farce _______________________________________________ Clfs-support mailing list [email protected] http://lists.cross-lfs.org/cgi-bin/mailman/listinfo/clfs-support
