1. LFS‎ > ‎

1. Host System Requirements

created : 2010-01-27   updated : 2010-01-27
 
‧ Bash-2.05a (/bin/sh should be a symbolic or hard link to bash)
‧ Binutils-2.12 (Versions greater than 2.19.1 are not recommended as they have not been tested)
‧ Bison-1.875 (/usr/bin/yacc should be a link to bison or small script that executes bison)
‧ Bzip2-1.0.2
‧ Coreutils-5.0 (or Sh-Utils-2.0, Textutils-2.0, and Fileutils-4.1)
‧ Diffutils-2.8
‧ Findutils-4.1.20
‧ Gawk-3.0 (/usr/bin/awk should be a link to gawk)
‧ Gcc-3.0.1 (Versions greater than 4.4.1 are not recommended as they have not been tested)
‧ Glibc-2.2.5 (Versions greater than 2.10.1 are not recommended as they have not been tested)
‧ Grep-2.5
‧ Gzip-1.2.4
‧ Linux Kernel-2.6.18 (having been compiled with GCC-3.0 or greater)
‧ M4-1.4
‧ Make-3.79.1
‧ Patch-2.5.4
‧ Perl-5.6.0
‧ Sed-3.0.2
‧ Tar-1.14
‧ Texinfo-4.8
 
To see whether your host system has all the appropriate versions, and the ability to compile programs, run the following:

cat > version-check.sh << "EOF"
#!/bin/bash
export LC_ALL=C
# Simple script to list version numbers of critical development tools
bash --version | head -n1 | cut -d" " -f2-4
echo "/bin/sh -> `readlink -f /bin/sh`"
echo -n "Binutils: "; ld --version | head -n1 | cut -d" " -f3-
bison --version | head -n1
if [ -e /usr/bin/yacc ];
then echo "/usr/bin/yacc -> `readlink -f /usr/bin/yacc`";
else echo "yacc not found"; fi
bzip2 --version 2>&1 < /dev/null | head -n1 | cut -d" " -f1,6-
echo -n "Coreutils: "; chown --version | head -n1 | cut -d")" -f2
diff --version | head -n1
find --version | head -n1
gawk --version | head -n1
if [ -e /usr/bin/awk ];
then echo "/usr/bin/awk -> `readlink -f /usr/bin/awk`";
else echo "awk not found"; fi
gcc --version | head -n1
/lib/libc.so.6 | head -n1 | cut -d" " -f1-7
grep --version | head -n1
gzip --version | head -n1
cat /proc/version
m4 --version | head -n1
make --version | head -n1
patch --version | head -n1
echo Perl `perl -V:version`
sed --version | head -n1
tar --version | head -n1
makeinfo --version | head -n1
echo 'main(){}' > dummy.c && gcc -o dummy dummy.c
if [ -x dummy ]; then echo "Compilation OK";
else echo "Compilation failed"; fi
rm -f dummy.c dummy
EOF


bash version-check.sh

 

 

The following is the result of running version-check.sh in my computer :

bash, version 4.0.33(1)-release
/bin/sh -> /bin/dash
Binutils: (GNU Binutils for Ubuntu) 2.20
version-check.sh: line 7: bison: command not found
yacc not found
bzip2,  Version 1.0.5, 10-Dec-2007.
Coreutils:  7.4
diff (GNU diffutils) 2.8.1
find (GNU findutils) 4.4.2
version-check.sh: line 15: gawk: command not found
/usr/bin/awk -> /usr/bin/mawk
gcc (Ubuntu 4.4.1-4ubuntu9) 4.4.1
GNU C Library (EGLIBC) stable release version
GNU grep 2.5.4
gzip 1.3.12
Linux version 2.6.31-17-generic (buildd@palmer) (gcc version 4.4.1 (Ubuntu 4.4.1
-4ubuntu8) ) #54-Ubuntu SMP Thu Dec 10 16:20:31 UTC 2009
version-check.sh: line 24: m4: command not found
GNU Make 3.81
patch 2.5.9
Perl version='5.10.0';
GNU sed version 4.2.1
tar (GNU tar) 1.22
version-check.sh: line 30: makeinfo: command not found
Compilation OK

 

checking the result,  I have to install :
bison yacc gawk m4 makeinfo

After some investigation, bison and yacc are available in the package bison++, makeinfo is available in the package texinfo.
So all I have to do is :

apt-get install bison++ gawk m4 texinfo

Running version_check.sh again, now I get :

bash, version 4.0.33(1)-release
/bin/sh -> /bin/dash
Binutils: (GNU Binutils for Ubuntu) 2.20
bison++ Version 1.21.9-1, adapted from GNU bison by coetmeur@icdc.fr
/usr/bin/yacc -> /usr/bin/bison++.yacc
bzip2,  Version 1.0.5, 10-Dec-2007.
Coreutils:  7.4
diff (GNU diffutils) 2.8.1
find (GNU findutils) 4.4.2
GNU Awk 3.1.6
/usr/bin/awk -> /usr/bin/gawk
gcc (Ubuntu 4.4.1-4ubuntu9) 4.4.1
GNU C Library (EGLIBC) stable release version
GNU grep 2.5.4
gzip 1.3.12
Linux version 2.6.31-17-generic (buildd@palmer) (gcc version 4.4.1 (Ubuntu 4.4.1-4ubuntu8) ) #54-Ubuntu SMP Thu Dec 10 16:20:31 UTC 2009
m4 (GNU M4) 1.4.13
GNU Make 3.81
patch 2.5.9
Perl version='5.10.0';
GNU sed version 4.2.1
tar (GNU tar) 1.22
makeinfo (GNU texinfo) 4.13
Compilation OK

I found most requirements are fullfilled with a higher version, with one exception, bison.  I decided to start journey anyway

Comments