安装 Tcl 和 Expect

安装 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-tclinclude=tcl源代码路径/generic

配置参数的意思是:

·         --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 的源码目录了。

 

链接:

Linux下通过EXPECT脚本自动执行ssh远程连接

Linux 脚本编写基础

你可能感兴趣的:(安装 Tcl 和 Expect)