安装 Tcl
本软件包和随后的两个软件包,都是为了运行 GCC
和 Binutils
的测试套件而安装的。这看起来有点多余,但我们觉得,确信重要工具能工作,这种感觉很舒服。
首先下载tcl
源代码tcl8.5a4-src.tar.tar
。下载地址:
http://www.tcl.tk/software/tcltk/downloadnow85.html
为编译 Tcl
做准备:
cd unix
./configure --prefix=/usr/tcl
|
这里—prefix=
指定了tcl
下一步的安装目录。
编译软件包:
make
|
软件包自带测试套件,能执行一些测试,以确定它是否编译正确。如果你想运行测试套件,执行下面的命令:
TZ=UTC make test
|
有时,软件包的测试套件会产生错误。你可以参考一下LFS Wiki(http://wiki.linuxfromscratch.org/
上其他人的结果,本书中的所有测试都可以在那里找到结果。
安装软件包:
make install
|
安装完毕以后,进入
tcl
源代码的根目录,把子目录
unix
下面的
tclUnixPort.h copy
到子目录
generic
中。暂时不要删除
tcl
源代码,因为
expect
的安装过程还需要用。
安装 Expect
下载Expect
的地址:http://expect.nist.gov/src/
我使用的版本是expect-5.39.0.tar.gz
。
另外还需要下载补丁:
http://www.linuxfromscratch.org/patches/lfs/5.0/expect-5.39.0-spawn.patch
首先打补丁:
patch -Np1 -i ../expect-5.39.0-spawn.patch
|
它修正了Expect
中的一个bug
,这个bug
会使GCC
的测试套件运行时产生假错误。
为编译 Expect
做准备:
./configure --prefix=/usr/expect --with-tcl=/usr/tcl/lib --with-x=no
|
配置参数的意思是:
·
--with-tcl=/usr/tcl/lib
:
确保配置脚本找到临时工具目录中的Tcl
,我们不希望它使用主系统中可能存在的tcl.
·
--with-x=no
:
告诉配置脚本,不要查找 Tk (Tcl
的 GUI
组件)
或 X
窗口系统库,这两个都有可能存在于主系统中。
·
-with-tclinclude
:帮助脚本找到所需要的tcl
头文件。
编译软件包:
make
|
本软件包自带测试套件,可以执行一系列测试,以确定是否正常编译。然而,第五章里运行Expect
的测试套件总是出些莫名其妙的错。因此,当你看到这里出错时,不要奇怪,很正常。如果你想运行测试套件,执行下面的命令:
make test
|
安装:
make install
|
现在你可以删除 Tcl
和 Expect
的源码目录了。
链接: