glibc - chap 6 - config failed

Pvl pvledoux at mail.be
Fri Feb 20 17:48:04 PST 2004


Hi,

I restart from scratch my install.
I'm in chap 6, installation Glibc-2.3.2.

Here is the error:
#/src/glibc-2.3.2/configure --prefix=/usr --disable-profile 
--enable-add-ons --libexecdir=/usr/bin --with-headers=/usr/include
[...]
make -r PARALLELMFLAGS="" CVSOPTS="" -C /src/glibc-2.3.2 objdir=`pwd` all
make[1]: Entering directory `/src/glibc-2.3.2'
make[1]: *** No rule to make target 
`/usr/lib/gcc-lib/i486-linux/3.3.3/include/stddef.h', needed by 
`/builds/glibc-build/bits/stdio_lim.st'.  Stop.
make[1]: Leaving directory `/src/glibc-2.3.2'
make: *** [all] Error 2

Thanks !

Pv

I have log all my commands (comments in french, sorry):


#20-02-04 - Configuration partition #

#/home était monté sur /dev/hda8
#Il n'y a rien dans /home

umount /dev/hda8
cfdisk /dev/hda

#J'ai supprimé hda8 et utilisé l'espace libre pour faire un nouveau hda8 
de 10Go et un hda9 de 30Go

reboot
mke2fs /dev/hda8
mke2fs /dev/hda9
export LFS=/mnt/lfs
mkdir -p $LFS
mount /dev/hda9 $LFS
mkdir -p $LFS/src
chmod a+wt $LFS/src
mkdir - $LFS/builds

#j'ai downloadé les sources dans $LFS/src et les patchs dans $LFS/src/patch

#on détermine la target triplet
bzip2 -d binutils-2.14.tar.bz2
tar -xvf binutils-2.14.tar
cd binutils-2.14
./config.guess
#--->i686-pc-linux-gnu

#on détermine le dynamic linker
readelf -l /bin/cat | grep interpreter
[Requesting program interpreter: /lib/ld-linux.so.2]

#création de tools et du lien symbolique
mkdir -p $LFS/tools
ln -s $LFS/tools /

#création du user lfs
useradd -s /bin/bash -m lfs
chown lfs $LFS/tools
chown lfs $LFS/builds

#login en tant que lfs
#création du bash_profile (voir doc)

#Compilation de binutils PASS1
mkdir -p $LFS/builds/binutils-build
cd $LFS/builds/binutils-build
time { $LFS/src/binutils-2.14/configure --prefix=/tools --disable-nls && 
make configure-host && make LDFLAGS="-all-static" && make install && 
make -C ld clean && make -C ld LDFLAGS="-all-static" LIB_PATH=/tools/lib;}

--->real 3m39



#GCC PASS 1#

bzip2 -d gcc-core-3.3.1.tar.bz2
tar -xvf gcc-core-3.3.1.tar
mkdir -p /mnt/lfs/builds/gcc-build
cd /mnt/lfs/builds/gcc-build

time { ../gcc-3.3.1/configure --prefix=/tools --with-local-prefix=/tools 
--disable-nls --enable-shared --enable-languages=c && make 
BOOT_LDFLAGS="-static" bootstrap && make BOOT_LDFLAGS="-static" 
bootstrap && make install;}
-real    14m21.822s
-user    12m13.500s
-sys     0m45.740s

ln -sf gcc /tools/bin/cc

#Linux-2.4.22 headers#
bzip2 -d linux-2.4.22.tar.bz2
tar -xvf linux-2.4.22.tar
cd linux-2.4.22/
make mrproper
make include/linux/version.h
make symlinks
--rm -f include/asm
--( cd include ; ln -sf asm-i386 asm)
mkdir /tools/include/asm
cp include/asm/* /tools/include/asm
cp -R include/asm-generic /tools/include
cp -R include/linux /tools/include

#Glibc-2.3.2#

bzip2 -d glibc-2.3.2.tar.bz2
bzip2 -d glibc-linuxthreads-2.3.2.tar.bz2
tar -xvf glibc-2.3.2.tar
cd glibc-2.3.2/
tar -xvf ../glibc-linuxthreads-2.3.2.tar
mkdir /tools/etc
touch /tools/etc/ld.so.conf
patch -Np1 -i ../patch/glibc-2.3.2-sscanf-1.patch
--patching file libio/swprintf.c
--patching file libio/swscanf.c
--patching file stdio-common/sscanf.c

mkdir -p /mnt/lfs/builds/glibc-build
cd /mnt/lfs/builds/glibc-build

time { $LFS/src/glibc-2.3.2/configure --prefix=/tools --disable-profile 
--enable-add-ons --with-headers=/tools/include 
--with-binutils=/tools/bin --without-gd && make && make check && make 
install && make localedata/install-locales;}
real    30m37.606s
user    23m53.780s
sys     3m15.750s

#TODO
#"Locking in" Glibc#

cd $LFS/builds/binutils-build
make -C ld install
rm -r $LFS/builds/binutils-build
SPECFILE=/tools/lib/gcc-lib/*/*/specs && sed -e 's@ /lib/ld-linux.so.2@ 
/tools/lib/ld-linux.so.2 at g' $SPECFILE > tempspecfile && mv -f 
tempspecfile $SPECFILE && unset SPECFILE
rm -f /tools/lib/gcc-lib/*/*/include/{pthread.h,bits/sigthread.h}
#CHECK !!!#
echo 'main(){}' > dummy.c
gcc dummy.c
readelf -l a.out | grep ': /tools'

--MUST output [Requesting program interpreter: /tools/lib/ld-linux.so.2]

rm dummy.c a.out

rm -r $LFS/src/glibc-2.3.2/
rm -r $LFS/builds/glibc-build

#Tcl-8.4.4#

bzip2 -d tcl8.4.4-src.tar.bz2
tar -xvf tcl8.4.4-src.tar
cd tcl8.4.4/unix/
time { ./configure --prefix=/tools && make && TZ=UTC make test && make 
install;}
--
--
--
ln -s tclsh8.4 /tools/bin/tclsh
cd ..

#Expect-5.39.0#

bzip2 -d expect-5.39.0.tar.bz2
tar -xvf expect-5.39.0.tar
cd expect-5.39
patch -Np1 -i ../patch/expect-5.39.0-spawn.patch

time { ./configure --prefix=/tools --with-tcl=/tools/lib --with-x=no && 
make && make test && make SCRIPTS="" install;}
--
--
--
cd ..
rm -r $LFS/src/tcl8.4.4
rm -r $LFS/src/expect-5.39

#DejaGnu-1.4.3#

bzip2 -d dejagnu-1.4.3.tar.bz2
tar -xvf dejagnu-1.4.3.tar
cd dejagnu-1.4.3
time { ./configure --prefix=/tools && make install;}
--
--
--

#GCC-3.3.1 - Pass 2#

expect -c "spawn ls"
bzip2 -d gcc-g++-3.3.1.tar.bz2
bzip2 -d gcc-testsuite-3.3.1.tar.bz2
tar -xvf gcc-core-3.3.1.tar
tar -xvf gcc-g++-3.3.1.tar
tar -xvf gcc-testsuite-3.3.1.tar
cd gcc-3.3.1
patch -Np1 -i ../patch/gcc-3.3.1-no_fixincludes-2.patch
patch -Np1 -i ../patch/gcc-3.3.1-specs-2.patch
mkdir $LFS/builds/gcc-build
cd $LFS/builds/gcc-build

time { $LFS/src/gcc-3.3.1/configure --prefix=/tools 
--with-local-prefix=/tools --enable-clocale=gnu --enable-shared 
--enable-threads=posix --enable-__cxa_atexit --enable-languages=c,c++ && 
make && make -k check && make install;}
--
--
--

#CHECK !!!#

echo 'main(){}' > dummy.c
gcc dummy.c
readelf -l a.out | grep ': /tools'

--MUST output [Requesting program interpreter: /tools/lib/ld-linux.so.2]

rm dummy.c a.out

#Binutils-2.14 - Pass 2#

tar -xvf binutils-2.14.tar

mkdir $LFS/builds/binutils-build
cd $LFS/builds/binutils-build

time { $LFS/src/binutils-2.14/configure --prefix=/tools --enable-shared 
--with-lib-path=/tools/lib && make && make check && make install && make 
-C ld clean && make -C ld LIB_PATH=/usr/lib:/lib;}

cd ..

#Gawk-3.1.3#

bzip2 -d gawk-3.1.3.tar.bz2
tar -xvf gawk-3.1.3.tar
cd gawk-3.1.3
time { ./configure --prefix=/tools && make && make check && make install;}
cd ..

#Coreutils-5.0#

bzip2 -d coreutils-5.0.tar.bz2
tar -xvf coreutils-5.0.tar
cd coreutils-5.0
time { ./configure --prefix=/tools && make && make 
RUN_EXPENSIVE_TESTS=yes check && make install;}
cd ..
--real    3m1.734s
--user    1m29.470s
--sys     0m38.520s

#Bzip2-1.0.2#

bzip2 -d bzip2-1.0.2.tar.bz2
tar -xvf bzip2-1.0.2.tar
cd bzip2-1.0.2
make PREFIX=/tools install

#Gzip-1.3.5#

bzip2 -d gzip-1.3.5.tar.bz2
tar -xvf gzip-1.3.5.tar
cd gzip-1.3.5
time { ./configure --prefix=/tools && make && make install;}
--real    0m9.695s
--user    0m5.680s
--sys     0m2.110s

cd ..

#Diffutils-2.8.1#

bzip2 -d diffutils-2.8.1.tar.bz2
tar -xvf diffutils-2.8.1.tar
cd diffutils-2.8.1
time { ./configure --prefix=/tools && make && make install;}
--real    0m25.164s
--user    0m16.310s
--sys     0m5.870s
cd ..

#Findutils-4.1.20#

bzip2 -d findutils-4.1.20.tar.bz2
tar -xvf findutils-4.1.20.tar
cd findutils-4.1.20
time { ./configure --prefix=/tools && make && make check && make install;}
--real    0m36.096s
--user    0m22.070s
--sys     0m9.600s
cd ..

#Make-3.80#

bzip2 -d make-3.80.tar.bz2
tar -xvf make-3.80.tar
cd make-3.80
time { ./configure --prefix=/tools && make && make check && make install;}
--real    0m43.794s
--user    0m16.260s
--sys     0m4.910s
cd ..

#Grep-2.5.1#

bzip2 -d grep-2.5.1.tar.bz2
tar -xvf grep-2.5.1.tar
cd grep-2.5.1
time { ./configure --prefix=/tools --disable-perl-regexp 
--with-included-regex && make && make check && make install;}
--real    0m22.176s
--user    0m14.380s
--sys     0m4.620s
cd ..

#Sed-4.0.7#

bzip2 -d sed-4.0.7.tar.bz2
tar -xvf sed-4.0.7.tar
cd sed-4.0.7
time { ./configure --prefix=/tools && make && make check && make install;}
--real    0m40.689s
--user    0m32.460s
--sys     0m5.060s
cd ..

#Gettext-0.12.1#

bzip2 -d gettext-0.12.1.tar.bz2
tar -xvf gettext-0.12.1.tar
cd gettext-0.12.1
time { ./configure --prefix=/tools && make && make check && make install;}
--real    25m40.689s
--user    23m32.460s
--sys     ???m5.060s
cd ..


#Ncurses-5.3#

bzip2 -d ncurses-5.3.tar.bz2
tar -xvf ncurses-5.3.tar
cd ncurses-5.3
patch -Np1 -i ../patch/ncurses-5.3-etip-2.patch
patch -Np1 -i ../patch/ncurses-5.3-vsscanf.patch
time { ./configure --prefix=/tools --with-shared --without-debug 
--without-ada --enable-overwrite && make && make install;}
--real    3m5.815s
--user    2m27.950s
--sys     0m18.630s
cd ..

#Patch-2.5.4#

bzip2 -d patch-2.5.4.tar.bz2
tar -xvf patch-2.5.4.tar
cd patch-2.5.4
time { CPPFLAGS=-D_GNU_SOURCE ./configure --prefix=/tools && make && 
make install;}
--real    0m8.281s
--user    0m6.400s
--sys     0m1.590s
cd ..


#Tar-1.13.25#

bzip2 -d tar-1.13.25.tar.bz2
tar -xvf tar-1.13.25.tar
cd tar-1.13.25
time { ./configure --prefix=/tools && make && make check && make install;}
--real    0m33.081s
--user    0m20.780s
--sys     0m7.020s
cd ..


#Texinfo-4.6#

bzip2 -d texinfo-4.6.tar.bz2
tar -xvf texinfo-4.6.tar
cd texinfo-4.6
time { ./configure --prefix=/tools && make && make check && make install;}
--real    0m36.902s
--user    0m27.090s
--sys     0m6.700s
cd ..


#Bash-2.05b#

bzip2 -d bash-2.05b.tar.bz2
tar -xvf bash-2.05b.tar
cd bash-2.05b
patch -Np1 -i ../patch/bash-2.05b-2.patch
time { ./configure --prefix=/tools && make && make tests && make install;}
--real    3m28.019s
--user    0m57.270s
--sys     0m11.830s
ln -s bash /tools/bin/sh
cd ..

#Util-linux-2.12#

bzip2 -d util-linux-2.12.tar.bz2
tar -xvf util-linux-2.12.tar
cd util-linux-2.12
cp configure configure.backup
sed "s@/usr/include@/tools/include at g" configure.backup > configure
time { ./configure && make -C lib && make -C mount  mount umount && make 
-C text-utils  more;}
--real    0m10.061s
--user    0m8.060s
--sys     0m1.040s
cp mount/{,u}mount text-utils/more /tools/bin
cd ..


#Perl-5.8.0#

bzip2 -d perl-5.8.0.tar.bz2
tar -xvf perl-5.8.0.tar
cd perl-5.8.0
patch -Np1 -i ../patch/perl-5.8.0-libc-3.patch
chmod u+w hints/linux.sh
echo 'static_ext="IO re Fcntl"' >> hints/linux.sh
time { ./configure.gnu --prefix=/tools && make perl utilities;}
--real    2m34.518s
--user    2m9.070s
--sys     0m12.880s
cp perl pod/pod2man /tools/bin
mkdir -p /tools/lib/perl5/5.8.0
cp -R lib/* /tools/lib/perl5/5.8.0
cd ..

#Stripping#

strip --strip-unneeded /tools/{,s}bin/*
strip --strip-debug /tools/lib/*

#############################################
#Chapter 6. Installing basic system software#
#############################################

#Entering the chroot environment#
su
chroot $LFS /tools/bin/env -i \
     HOME=/root TERM=$TERM PS1='\u:\w\$ ' \
     PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin \
     /tools/bin/bash --login

#Changing ownership#

chown -R 0:0 /tools

#Creating directories#

mkdir -p /{bin,boot,dev/{pts,shm},etc/opt,home,lib,mnt,proc}
mkdir -p /{root,sbin,tmp,usr/local,var,opt}
for dirname in /usr /usr/local
     do
     mkdir $dirname/{bin,etc,include,lib,sbin,share,src}
     ln -s share/{man,doc,info} $dirname
     mkdir $dirname/share/{dict,doc,info,locale,man}
     mkdir $dirname/share/{nls,misc,terminfo,zoneinfo}
     mkdir $dirname/share/man/man{1,2,3,4,5,6,7,8}
done
mkdir /var/{lock,log,mail,run,spool}
mkdir -p /var/{tmp,opt,cache,lib/misc,local}
mkdir /opt/{bin,doc,include,info}
mkdir -p /opt/{lib,man/man{1,2,3,4,5,6,7,8}}

chmod 0750 /root
chmod 1777 /tmp /var/tmp


#Mounting the proc and devpts file systems#

mount proc /proc -t proc
mount devpts /dev/pts -t devpts

#Creating essential symlinks#

ln -s /tools/bin/{bash,cat,pwd,stty} /bin
ln -s /tools/bin/perl /usr/bin
ln -s /tools/lib/libgcc_s.so.1 /usr/lib
ln -s bash /bin/sh

#Creating the passwd and group files#

cat > /etc/passwd << "EOF"
root:x:0:0:root:/root:/bin/bash
EOF

cat > /etc/group << "EOF"
root:x:0:
bin:x:1:
sys:x:2:
kmem:x:3:
tty:x:4:
tape:x:5:
daemon:x:6:
floppy:x:7:
disk:x:8:
lp:x:9:
dialout:x:10:
audio:x:11:
EOF

exec /tools/bin/bash --login +h

#Makedev-1.7#

cd src
bzcat MAKEDEV-1.7.bz2 > /dev/MAKEDEV
chmod 754 /dev/MAKEDEV
cd /dev
./MAKEDEV -v generic-nopty
cd ..
cd src

#Linux-2.4.22 headers#

tar -xvf linux-2.4.22.tar
chown -R 0:0 linux-2.4.22
cd linux-2.4.22
make mrproper
make include/linux/version.h
make symlinks
cp -HR include/asm /usr/include
cp -R include/asm-generic /usr/include
cp -R include/linux /usr/include
touch /usr/include/linux/autoconf.h
cd /src

#Man-pages-1.60#

bzip2 -d man-pages-1.60.tar.bz2
tar -xvf man-pages-1.60.tar
cd man-pages-1.60
time { make install;}
cd /src

#Glibc-2.3.2#

tar -xvf glibc-2.3.2.tar
cd glibc-2.3.2
tar -xvf /src/glibc-linuxthreads-2.3.2.tar
touch /etc/ld.so.conf
patch -Np1 -i /src/patch/glibc-2.3.2-sscanf-1.patch

mkdir /builds/glibc-build
cd /builds/glibc-build
time { /src/glibc-2.3.2/configure --prefix=/usr --disable-profile 
--enable-add-ons --libexecdir=/usr/bin --with-headers=/usr/include && 
make && make check && make install && make localedata/install-locales && 
make -C /src/glibc-2.3.2/linuxthreads/man && make -C 
/src/glibc-2.3.2/linuxthreads/man install;}




More information about the lfs-support mailing list