我正在尝试使用从 Redhat Linux 上的源 v8.5.8 构建的 Tcl 从源 v5.43 构建“expect”。Tcl 构建得很好,但我尝试构建 expect 失败了。我运行 configure,然后运行 make,结果出现错误:编译 exp_inter.c 时未声明“TCL_REG_BOSONLY”。我进行了一些挖掘,发现 Tcl 文件 tclInt.h 中定义了 TCL_REG_BOSONLY 值,但 exp_inter.c 文件中没有该值的 #include。
我的问题是,能否使用 Tcl 版本 8.5.8 从源代码构建“expect”,还是需要更早的版本?我能找到的“expect”最新版本是 5.43,当前的 Tcl 版本是 8.5.8,但两者之间似乎有些不兼容。
任何帮助均感激不尽。
答案1
安装 tcl 后,您是否运行过ldconfig
重新链接库?看起来 expect 找不到所需的库。运行时是否看到任何错误configure
?是否满足所有依赖项?
答案2
好的,我从 sourceforge.net/projects/expect/ 下载了较新版本的 expect (v5.44.1.15)。我最初是从 expect 官方网站 expect.nist.gov 下载的,显然这个版本已经过时了。无论如何,较新版本构建得很好。