v. 宿主系统要求

你的宿主系统应该有下列软件,并满足其最低版本要求。对于现在大部分 Linux 发行版都不是问题。需要指出的是,多数的发行版将软件的头文件放在不同的软件包中,这些软件包的名字通常是“<package-name>-devel”或“<package-name>-dev”的形式。如果你的发行版提供这些软件包,请确保安装了它们。

请注意上文中提到的符号链接对于使用本书中的指令来构建 LFS 系统是必须的。指向其它软件的符号链接(比如 dash、mawk 等)能够工作,但它们未经测试,也没有 LFS 开发团队的支持,要想让它们正确执行,可能需要对命令略加修改或对源代码打上额外的补丁。

要查看你的宿主系统是否能满足所有的软件包版本要求,并且能够编译程序,运行下面指令:


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


Host by Alair