On Thursday 23 February 2006 19:07, Bo Andresen <[EMAIL PROTECTED]> wrote about 'Re: [gentoo-user] chroot: cannot run command `bin/bash': Exec format error': > On Friday 24 February 2006 01:56, Boyd Stephen Smith Jr. wrote: > > So, why don't you give it a go with: > > make ARCH=x86_64 CC="gcc -m64" menuconfig > > make ARCH=x86_64 CC="gcc -m64" > > make ARCH=x86_64 CC="gcc -m64" modules_install > > make ARCH=x86_64 CC="gcc -m64" install > > > > and let me know how it goes. > > via linux # make ARCH=x86_64 CC="gcc -m64" > CHK include/linux/version.h > UPD include/linux/version.h > SPLIT include/linux/autoconf.h -> include/config/* > CC arch/x86_64/kernel/asm-offsets.s > cc1: error: code model `kernel' not supported in the 32 bit mode > cc1: sorry, unimplemented: 64-bit mode not compiled in
Blah. I don't really know how to get around this. I generally stay away from configuring my own gcc and I don't know what, if any, USE flag controls when 64-bit mode is compiled in. That works in my i686-pc-linux-gnu-gcc, but maybe that's 'cause it is a "cross"-compiler on my system. It may be easier at this point to just find a live cd / live dvd that will bring you up in a 64-bit kernel. It won't matter much whether it is gentoo or some other distro [1], as long as it brings up the network and your drives, because all you'll be doing is chrooting and finishing the gentoo install. If you still want to continue down the "cross"-compile and install a kernel route (what we've been trying to do so far). I suggest you emerge crossdev in your 32-bit environment, then do crossdev -s1 -t x86_64 to compile a cross-compiling bin-utils and gcc (C only) [2]. Then, you should be able to "cross"-compile your kernel with. make ARCH=x86_64 CROSS_COMPILE=x86_64-pc-linux-gnu- (menuconfig, all, modules_install, etc.) Crossdev will take basically no time to install, but compiling gcc make take a while, even without any language front-ends other than C. -- Boyd Stephen Smith Jr. [EMAIL PROTECTED] ICQ: 514984 YM/AIM: DaTwinkDaddy [1] I only mention this because the gentoo amd64 live cds were nothing but problems on my system and it was much easier to bring up (k)ubuntu, as long as all I needed was 64-bit mode. [2] Cross dev have 4 stages: (0) bin-utils, (1) gcc, (C only) (2) linux-headers, (3) libc, and (4) gcc (C/C++) and two "extra" targets (ex-gcc) gcc (all languages) and (ex-gdb) gdb. You'll only need the first two to compile the kernel, since it provides it's own headers, can't link to any library (including libc), and isn't written in any language other than C. -- [email protected] mailing list

