我需要在我的Ubuntu发行版17.10上安装和使用WordNet(当前版本3.0(。我已经安装了所有依赖项(tcl/tk(,并且在开发人员说明之后,我遵循通常的./configure
make
make install
过程。
我解压缩了软件包,当我在目录中键入./configure.sh
时,它可以正常工作,没有错误:
WordNet is now configured
Installation directory: /usr/local/WordNet-3.0
等。
当我现在运行make
时,我得到:
compilation terminated.
Makefile:267: recipe for target 'libWN_a-binsrch.o' failed
make[3]: *** [libWN_a-binsrch.o] Error 1
make[3]: Leaving directory '/home/user/WordNet/WordNet-3.0/lib'
Makefile:372: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/home/user/WordNet/WordNet-3.0/lib'
Makefile:218: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/user/WordNet/WordNet-3.0'
Makefile:156: recipe for target 'all' failed
make: *** [all] Error 2
如果我跑sudo make
我得到:
compilation terminated.
Makefile:273: recipe for target 'wishwn-tkAppInit.o' failed
make[2]: *** [wishwn-tkAppInit.o] Error 1
make[2]: Leaving directory '/home/user/WordNet/WordNet-3.0/src'
Makefile:218: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/user/WordNet/WordNet-3.0'
Makefile:156: recipe for target 'all' failed
make: *** [all] Error 2
(如果我再次键入make
,在sudo make
之后和之后,我会收到相同的错误(。
在程序的分发自述文件和安装文本中,我没有找到任何相关信息。
有什么见解吗?
谢谢!
WordNet 3.0似乎以不推荐使用的方式访问Tcl内部(interp->result
(。
尝试使用CFLAGS=-DUSE_INTERP_RESULT make
进行编译 - 这样可以对interp->result
进行旧访问。
从手册页:
对于不再维护的遗留程序和扩展,只能使用编译器指令对 Tcl 8.6 头文件进行编译
#define USE_INTERP_RESULT
和/或
#define USE_INTERP_ERRORLINE
取决于访问Tcl_Interp结构的哪些字段。这些指令可以嵌入到代码中或通过编译器选项提供。