2.2. Krav til vertssystem

Vertssystemet ditt skal ha følgende programvare med de minste versjonene som er angitt. Dette bør ikke være et problem for de fleste moderne Linux-distribusjoner. Legg også merke til at mange distribusjoner vil plassere programvarehodetekster i separate pakker, ofte i form av "<pakkenavn> -utvikle" eller "<pakke-navn> -dev". Sørg for å installere dem hvis distribusjonen gir dem.

Tidligere versjoner av de listede programvarepakkene kan fungere, men har ikke blitt testet.

Bash-3.2 (/bin/sh skal være en symbolsk eller hard kobling til bash)

Binutils-2.25 (Versjoner større enn 2,34 anbefales ikke siden de ikke er testet)

Bison-2.7 (/usr/bin/yacc skal være en lenke til bison eller lite script som kjører bison)

Bzip2-1.0.4

Coreutils-6.9

Diffutils-2.8.1

Findutils-4.2.31

Gawk-4.0.1 (/usr/bin/awk skal være en lenke til gawk)

GCC-6.2 inkludert C ++ -kompilatoren, g++ (Versjoner større enn 9.2.0 anbefales ikke siden de ikke er testet)

Glibc-2.11 (Versjoner større enn 2.31 anbefales ikke siden de ikke er testet)

Grep-2.5.1a

Gzip-1.3.12

Linux Kernel-3.2

Årsaken til kjerneversjonskravet er at vi spesifiserer den versjonen når vi bygger glibc i kapittel 6 etter anbefaling fra utviklerne. Det kreves også av udev.

Hvis vertskjernen er tidligere enn 3.2, må du bytte ut kjernen med en mer oppdatert versjon. Det er to måter du kan gjøre dette på. Først, se om Linux-leverandøren din har en 3.2 eller nyere kjerne-pakke. I så fall kan det være lurt å installere det. Hvis leverandøren din ikke tilbyr en akseptabel kjerne-pakke, eller du foretrekker å ikke installere den, kan du sette sammen en kjerne selv. Instruksjoner for å sammenstille kjernen og konfigurere oppstartslasteren (forutsatt at verten bruker GRUB) ligger i kapittel 8.

M4-1.4.10

Make-4.0

Patch-2.5.4

Perl-5.8.8

Python-3.4

Sed-4.1.5

Tar-1.22

Texinfo-4.7

Xz-5.0.0

Merk at symlinkene som er nevnt ovenfor, er nødvendige for å bygge et LFS-system ved å bruke instruksjonene i denne boken. Symlinker som viser til annen programvare (for eksempel dash, mawk, etc.) kan fungere, men blir ikke testet eller støttet av LFS-utviklingsteamet, og kan kreve enten avvik fra instruksjonene eller ytterligere oppdateringer til noen pakker.

Hvis du vil se om vertssystemet ditt har alle de nødvendige versjonene, og muligheten til å kompilere programmer, kjører du følgende:

cat > version-check.sh << "EOF"
#!/bin/bash
# Simple script to list version numbers of critical development tools
export LC_ALL=C
bash --version | head -n1 | cut -d" " -f2-4
MYSH=$(readlink -f /bin/sh)
echo "/bin/sh -> $MYSH"
echo $MYSH | grep -q bash || echo "ERROR: /bin/sh does not point to bash"
unset MYSH

 

echo -n "Binutils: "; ld --version | head -n1 | cut -d" " -f3-
bison --version | head -n1

 

if [ -h /usr/bin/yacc ]; then

echo "/usr/bin/yacc -> `readlink -f /usr/bin/yacc`";
elif [ -x /usr/bin/yacc ]; then
echo yacc is `/usr/bin/yacc --version | head -n1`
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 [ -h /usr/bin/awk ]; then
echo "/usr/bin/awk -> `readlink -f /usr/bin/awk`";
elif [ -x /usr/bin/awk ]; then
echo awk is `/usr/bin/awk --version | head -n1`
else
echo "awk not found"
fi

 

gcc --version | head -n1
g++ --version | head -n1
ldd --version | head -n1 | cut -d" " -f2- # glibc version
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`
python3 --version
sed --version | head -n1
tar --version | head -n1
makeinfo --version | head -n1 # texinfo version
xz --version | head -n1

 

echo 'int main(){}' > dummy.c && g++ -o dummy dummy.c
if [ -x dummy ]
then echo "g++ compilation OK";
else echo "g++ compilation failed"; fi
rm -f dummy.c dummy
EOF

 

bash version-check.sh

 

 

Forrige Hjem Neste