为srilm运行make命令时出错

时间:2018-07-27 07:17:09

标签: srilm

在执行make命令时,出现以下错误:

/home/cse/phd/16071009/NLP//lib/i686-m64/libmisc.a(File.o):在函数File::~File()': /home/cse/phd/16071009/NLP/misc/src/File.cc:127: undefined reference to libiconv_close中 /home/cse/phd/16071009/NLP//lib/i686-m64/libmisc.a(File.o):在函数File::reopen(char const*, char const*)': /home/cse/phd/16071009/NLP/misc/src/File.cc:167: undefined reference to libiconv_close'中 /home/cse/phd/16071009/NLP//lib/i686-m64/libmisc.a(File.o):在函数File::reopen(char const*)': /home/cse/phd/16071009/NLP/misc/src/File.cc:217: undefined reference to libiconv_close'中 /home/cse/phd/16071009/NLP//lib/i686-m64/libmisc.a(File.o):在函数File::reopen(char const*, unsigned long, int)': /home/cse/phd/16071009/NLP/misc/src/File.cc:249: undefined reference to libiconv_close'中 /home/cse/phd/16071009/NLP//lib/i686-m64/libmisc.a(File.o):在函数File::reopen(std::string&, int)': /home/cse/phd/16071009/NLP/misc/src/File.cc:273: undefined reference to libiconv_close'中 /home/cse/phd/16071009/NLP//lib/i686-m64/libmisc.a(File.o):在函数File::fgetsUTF8(char*, int)': /home/cse/phd/16071009/NLP/misc/src/File.cc:387: undefined reference to libiconv'中 /home/cse/phd/16071009/NLP/misc/src/File.cc:345:对libiconv_open' /home/cse/phd/16071009/NLP/misc/src/File.cc:349: undefined reference to libiconv_open'的未定义引用 collect2:错误:ld返回1退出状态 测试-f ../bin/i686-m64/ngram make [2]: * [../bin/i686-m64/ngram]错误1 make [2]:离开目录/home/cse/phd/16071009/NLP/lm/src' make[1]: *** [release-programs] Error 1 make[1]: Leaving directory / home / cse / phd / 16071009 / NLP' make:* [世界]错误2 [16071009 @ compute-01 NLP] $

1 个答案:

答案 0 :(得分:0)

-liconv在链接命令中不显示,所以这就是为什么 获取未定义的引用。尝试放入:

 SYS_LIBRARIES = -L<path-to-libiconv_install> -liconv

例如,如果您在Ubuntu x64上安装srilm,请编辑以下文件:common / Makefile.site.i686-m64。确保-L选项指向具有libiconv.so或libiconv.a文件的目录。

对我来说,libiconv使用make在Ubuntu 18.04 x64上安装srilm,位于/usr/local/lib上。因此,我将以下行添加到common / Makefile.site.i686-m64:

SYS_LIBRARIES = -L/usr/local/lib -liconv

来自http://mailman.speech.sri.com/pipermail/srilm-user/2014q3/001694.html

的解决方案