[Clfs-support] CLFS multilib (SVN20100103): cannot neither chroot nor boot Ch. 6

appzer0 appzer0 at free.fr
Tue Jan 5 23:00:35 PST 2010


Hi,

I cannot chroot on my Slackware64 13.0 vanilla system:

# chroot "${CLFS}" /tools/bin/env -i \
HOME=/root TERM="${TERM}" PS1='CHROOT_CLFS\u:\w\$ ' \
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin \
/tools/bin/bash --login +h
chroot: cannot run command `/tools/bin/env': No such file or directory

though my CPU is a AMD Phenom X2 (64 bits). Kernel has IA32 emulation
compiled in.
I cross-compile for x86_64 target with multilib caabilities. Cross-tools
compiled fine.

Slackware64 has a multilib-capable design but is not able to compile
multilib (gcc and glibc are pure 64-bit), so it has a lib64 _by
default_. My guess is that other 64-bit distros may have their default
libpath in /lib instead of /lib64, for example. So what should I do to be able to chroot?

As a matter of fact, I wanted to boot following the Boot method but what I was expecting happened: no init found.

I strictly followed the clfs multilib book several times now - excepting software versions - and I realize I'm just stuck each time at the Boot/Chroot step.

Below are the values I'm using and system host values while at the end of chap. 6. TIA

-------------------------
# env
AS=x86_64-frenchslack-linux-gnu-as
AR=x86_64-frenchslack-linux-gnu-ar
CLFS_TARGET32=i686-frenchslack-linux-gnu
CLFS_HOST=x86_64-cross-linux-gnu
TERM=xterm
CLFS_TARGET=x86_64-frenchslack-linux-gnu
LC_ALL=POSIX
BUILD64=-m64
CLFS=/frenchslack-prod
BUILD32=-m32
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/usr/sbin:/bin:/usr/bin
LD=x86_64-frenchslack-linux-gnu-ld
PWD=/frenchslack-prod/sources/util-linux-ng-2.16.2
STRIP=x86_64-frenchslack-linux-gnu-strip
PS1=CLFS:\u:\w\$
CXX=x86_64-frenchslack-linux-gnu-g++
HOME=/root
SHLVL=2
RANLIB=x86_64-frenchslack-linux-gnu-ranlib
CC=x86_64-frenchslack-linux-gnu-gcc
_=/bin/env

# uname -a
Linux Poopy 2.6.29.6 #2 SMP Mon Dec 7 14:40:49 CST 2009 x86_64 AMD
Phenom(tm) II X2 550 Processor AuthenticAMD GNU/Linux

# gcc -v
Reading specs from /usr/lib64/gcc/x86_64-slackware-linux/4.3.3/specs
Target: x86_64-slackware-linux
Configured with: ../gcc-4.3.3/configure --prefix=/usr
--libdir=/usr/lib64 --enable-shared --enable-bootstrap
--enable-languages=ada,c,c++,fortran,java,objc --enable-threads=posix
--enable-checking=release --with-system-zlib
--disable-libunwind-exceptions --enable-__cxa_atexit --enable-libssp
--with-gnu-ld --verbose --disable-multilib
--target=x86_64-slackware-linux --build=x86_64-slackware-linux
--host=x86_64-slackware-linux
Thread model: posix
gcc version 4.3.3 (GCC)

# /tools/bin/gcc -v
/tools/bin/gcc: /lib64/libc.so.6: version `GLIBC_2.11' not found
(required by /tools/bin/gcc)

$ readelf -l /frenchslack-prod/tools/lib/libc-2.11.90.so | grep interpreter
       [Requesting program interpreter: /tools/lib/ld-linux.so.2]
$ readelf -l /frenchslack-prod/tools/lib64/libc-2.11.90.so | grep interpreter
       [Requesting program interpreter: /tools/lib64/ld-linux-x86-64.so.2]
$ readelf -l /frenchslack-prod/tools/bin/bash | grep interpreter
       [Requesting program interpreter: /lib64/ld-linux-x86-64.so.2]
-------------------

Any clue will be greatly appreciated.

appzer0




More information about the Clfs-support mailing list