运行Kaldi yesno实例时version `GLIBCXX_3.4.21' not found的原因

来源:互联网 发布:编程是什么专业 编辑:程序博客网 时间:2024/06/07 06:33

最近开始倒腾Kaldi走了一些弯路,一心想在Windows上摸索,编译神马的都OK,最后却拦在了Kaldi最核心、最重要的脚本上;由于Windows下对软连接支持不好(甚至说是完全不能),放弃!!!转为linux(这个才是与国际接轨的)下:


Linux下也是经历了很多曲折,什么GCC版本过低等等~~~~今天的话题是利用升级后的GCC编译完成Kaldi程式后,脚本运行时出现的“version `GLIBCXX_3.4.21' not found”问题:

arpa2fst: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by arpa2fst)arpa2fst: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by arpa2fst)arpa2fst: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by arpa2fst)arpa2fst: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-lm.so)arpa2fst: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-lm.so)arpa2fst: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-lm.so)arpa2fst: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.5' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-lm.so)arpa2fst: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-lm.so)arpa2fst: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-util.so)arpa2fst: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-util.so)arpa2fst: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-matrix.so)arpa2fst: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-base.so)arpa2fst: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by /home/houwenbin/kaldi-master/tools/openfst/lib/libfst.so.7)arpa2fst: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/tools/openfst/lib/libfst.so.7)arpa2fst: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.5' not found (required by /home/houwenbin/kaldi-master/tools/openfst/lib/libfst.so.7)arpa2fst: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/houwenbin/kaldi-master/tools/openfst/lib/libfst.so.7)fstisstochastic: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by fstisstochastic)fstisstochastic: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by fstisstochastic)fstisstochastic: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by fstisstochastic)fstisstochastic: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-fstext.so)fstisstochastic: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-fstext.so)fstisstochastic: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-fstext.so)fstisstochastic: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-util.so)fstisstochastic: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-util.so)fstisstochastic: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-matrix.so)fstisstochastic: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/src/lib/libkaldi-base.so)fstisstochastic: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by /home/houwenbin/kaldi-master/tools/openfst/lib/libfst.so.7)fstisstochastic: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/tools/openfst/lib/libfst.so.7)fstisstochastic: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.5' not found (required by /home/houwenbin/kaldi-master/tools/openfst/lib/libfst.so.7)fstisstochastic: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/houwenbin/kaldi-master/tools/openfst/lib/libfst.so.7)fstcompile: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by fstcompile)fstcompile: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfstscript.so.7)fstcompile: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfstscript.so.7)fstcompile: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfstscript.so.7)fstcompile: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)fstcompile: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)fstcompile: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.5' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)fstcompile: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)fstarcsort: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by fstarcsort)fstarcsort: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfstscript.so.7)fstarcsort: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfstscript.so.7)fstarcsort: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfstscript.so.7)fstarcsort: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)fstarcsort: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)fstarcsort: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.5' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)fstarcsort: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)fstcompose: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by fstcompose)fstcompose: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfstscript.so.7)fstcompose: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfstscript.so.7)fstcompose: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfstscript.so.7)fstcompose: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)fstcompose: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)fstcompose: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.5' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)fstcompose: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)fstinfo: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by fstinfo)fstinfo: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfstscript.so.7)fstinfo: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfstscript.so.7)fstinfo: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfstscript.so.7)fstinfo: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)fstinfo: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)fstinfo: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.5' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)fstinfo: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/houwenbin/kaldi-master/tools/openfst-1.6.2/lib/libfst.so.7)

命令一查,确实是:

[houwenbin@localhost s5]$ strings /usr/lib64/libstdc++.so.6 | grep GLIBCGLIBCXX_3.4GLIBCXX_3.4.1GLIBCXX_3.4.2GLIBCXX_3.4.3GLIBCXX_3.4.4GLIBCXX_3.4.5GLIBCXX_3.4.6GLIBCXX_3.4.7GLIBCXX_3.4.8GLIBCXX_3.4.9GLIBCXX_3.4.10GLIBCXX_3.4.11GLIBCXX_3.4.12GLIBCXX_3.4.13GLIBC_2.2.5GLIBC_2.3GLIBC_2.4GLIBC_2.3.2GLIBCXX_FORCE_NEWGLIBCXX_DEBUG_MESSAGE_LENGTH

想了想,由于GCC升级缘故造成的:参考拷贝到/usr/lib64/....更改软连接指向最新的:

[houwenbin@localhost s5]$ cp /usr/local/gcc-4.9.4/lib64/libstdc++.so.6.0.20 /usr/lib64/cp: cannot create regular file `/usr/lib64/libstdc++.so.6.0.20': Permission denied[houwenbin@localhost s5]$ sudo cp /usr/local/gcc-4.9.4/lib64/libstdc++.so.6.0.20 /usr/lib64/[sudo] password for houwenbin: [houwenbin@localhost s5]$ [houwenbin@localhost s5]$ rm -f /usr/lib64/libstdc++.so.6rm: cannot remove `/usr/lib64/libstdc++.so.6': Permission denied[houwenbin@localhost s5]$ sudo rm -f /usr/lib64/libstdc++.so.6[houwenbin@localhost s5]$ [houwenbin@localhost s5]$ sudo ln -s /usr/lib64/libstdc++.so.6.0.20 /usr/lib64/libstdc++.so.6[houwenbin@localhost s5]$ [houwenbin@localhost s5]$ ll /usr/lib64/libstdc*lrwxrwxrwx 1 root root      30 Nov 27 01:48 /usr/lib64/libstdc++.so.6 -> /usr/lib64/libstdc++.so.6.0.20-rwxr-xr-x 1 root root  989840 May 10  2016 /usr/lib64/libstdc++.so.6.0.13-rwxr-xr-x 1 root root 6779708 Nov 27 01:44 /usr/lib64/libstdc++.so.6.0.20[houwenbin@localhost s5]$ strings /usr/lib64/libstdc++.so.6 | grep GLIBCGLIBCXX_3.4GLIBCXX_3.4.1GLIBCXX_3.4.2GLIBCXX_3.4.3GLIBCXX_3.4.4GLIBCXX_3.4.5GLIBCXX_3.4.6GLIBCXX_3.4.7GLIBCXX_3.4.8GLIBCXX_3.4.9GLIBCXX_3.4.10GLIBCXX_3.4.11GLIBCXX_3.4.12GLIBCXX_3.4.13GLIBCXX_3.4.14GLIBCXX_3.4.15GLIBCXX_3.4.16GLIBCXX_3.4.17GLIBCXX_3.4.18GLIBCXX_3.4.19GLIBCXX_3.4.20GLIBC_2.3GLIBC_2.2.5GLIBC_2.3.2GLIBCXX_FORCE_NEWGLIBCXX_DEBUG_MESSAGE_LENGTH


再运行yesno例子:发现还是有问题,但不是

[houwenbin@localhost s5]$ ./run.sh --2017-11-27 02:00:42--  http://www.openslr.org/resources/1/waves_yesno.tar.gzResolving www.openslr.org... 46.101.158.64Connecting to www.openslr.org|46.101.158.64|:80... connected.HTTP request sent, awaiting response... 200 OKLength: 4703754 (4.5M) [application/x-gzip]Saving to: `waves_yesno.tar.gz.1'100%[===========================================================================================>] 4,703,754    317K/s   in 18s     2017-11-27 02:01:01 (253 KB/s) - `waves_yesno.tar.gz.1' saved [4703754/4703754]waves_yesno/waves_yesno/1_0_0_0_0_0_1_1.wavwaves_yesno/1_1_0_0_1_0_1_0.wavwaves_yesno/1_0_1_1_1_1_0_1.wavwaves_yesno/1_1_1_1_0_1_0_0.wavwaves_yesno/0_0_1_1_1_0_0_0.wavwaves_yesno/0_1_1_1_1_1_1_1.wavwaves_yesno/0_1_0_1_1_1_0_0.wavwaves_yesno/1_0_1_1_1_0_1_0.wavwaves_yesno/1_0_0_1_0_1_1_1.wavwaves_yesno/0_0_1_0_1_0_0_0.wavwaves_yesno/0_1_0_1_1_0_1_0.wavwaves_yesno/0_0_1_1_0_1_1_0.wavwaves_yesno/1_0_0_0_1_0_0_1.wavwaves_yesno/1_1_0_1_1_1_1_0.wavwaves_yesno/0_0_1_1_1_1_0_0.wavwaves_yesno/1_1_0_0_1_1_1_0.wavwaves_yesno/0_0_1_1_0_1_1_1.wavwaves_yesno/1_1_0_1_0_1_1_0.wavwaves_yesno/0_1_0_0_0_1_1_0.wavwaves_yesno/0_0_0_1_0_0_0_1.wavwaves_yesno/0_0_1_0_1_0_1_1.wavwaves_yesno/0_0_1_0_0_0_1_0.wavwaves_yesno/1_1_0_1_1_0_0_1.wavwaves_yesno/0_1_1_1_0_1_0_1.wavwaves_yesno/0_1_1_1_0_0_0_0.wavwaves_yesno/README~waves_yesno/0_1_0_0_0_1_0_0.wavwaves_yesno/1_0_0_0_0_0_0_1.wavwaves_yesno/1_1_0_1_1_0_1_1.wavwaves_yesno/1_1_0_0_0_0_0_1.wavwaves_yesno/1_0_0_0_0_0_0_0.wavwaves_yesno/0_1_1_1_1_0_1_0.wavwaves_yesno/0_0_1_1_0_1_0_0.wavwaves_yesno/1_1_1_0_0_0_0_1.wavwaves_yesno/1_0_1_0_1_0_0_1.wavwaves_yesno/0_1_0_0_1_0_1_1.wavwaves_yesno/0_0_1_1_1_1_1_0.wavwaves_yesno/1_1_0_0_0_1_1_1.wavwaves_yesno/0_1_1_1_0_0_1_0.wavwaves_yesno/1_1_0_1_0_1_0_0.wavwaves_yesno/1_1_1_1_1_1_1_1.wavwaves_yesno/0_0_1_0_1_0_0_1.wavwaves_yesno/1_1_1_1_0_0_1_0.wavwaves_yesno/0_0_1_1_1_0_0_1.wavwaves_yesno/0_1_0_1_0_0_0_0.wavwaves_yesno/1_1_1_1_1_0_0_0.wavwaves_yesno/READMEwaves_yesno/0_1_1_0_0_1_1_1.wavwaves_yesno/0_0_1_0_0_1_1_0.wavwaves_yesno/1_1_0_0_1_0_1_1.wavwaves_yesno/1_1_1_0_0_1_0_1.wavwaves_yesno/0_0_1_0_0_1_1_1.wavwaves_yesno/0_0_1_1_0_0_0_1.wavwaves_yesno/1_0_1_1_0_1_1_1.wavwaves_yesno/1_1_1_0_1_0_1_0.wavwaves_yesno/1_1_1_0_1_0_1_1.wavwaves_yesno/0_1_0_0_1_0_1_0.wavwaves_yesno/1_1_1_0_0_1_1_1.wavwaves_yesno/0_1_1_0_0_1_1_0.wavwaves_yesno/0_0_0_1_0_1_1_0.wavwaves_yesno/1_1_1_1_1_1_0_0.wavwaves_yesno/0_0_0_0_1_1_1_1.wavPreparing train and test dataperl: warning: Setting locale failed.perl: warning: Please check that your locale settings:        LANGUAGE = (unset),        LC_ALL = (unset),        LANG = "zh_CN.UTF-8"    are supported and installed on your system.perl: warning: Falling back to the standard locale ("C").perl: warning: Setting locale failed.perl: warning: Please check that your locale settings:        LANGUAGE = (unset),        LC_ALL = (unset),        LANG = "zh_CN.UTF-8"    are supported and installed on your system.perl: warning: Falling back to the standard locale ("C").perl: warning: Setting locale failed.perl: warning: Please check that your locale settings:        LANGUAGE = (unset),        LC_ALL = (unset),        LANG = "zh_CN.UTF-8"    are supported and installed on your system.perl: warning: Falling back to the standard locale ("C").perl: warning: Setting locale failed.perl: warning: Please check that your locale settings:        LANGUAGE = (unset),        LC_ALL = (unset),        LANG = "zh_CN.UTF-8"    are supported and installed on your system.perl: warning: Falling back to the standard locale ("C").perl: warning: Setting locale failed.perl: warning: Please check that your locale settings:        LANGUAGE = (unset),        LC_ALL = (unset),        LANG = "zh_CN.UTF-8"    are supported and installed on your system.perl: warning: Falling back to the standard locale ("C").perl: warning: Setting locale failed.perl: warning: Please check that your locale settings:        LANGUAGE = (unset),        LC_ALL = (unset),        LANG = "zh_CN.UTF-8"    are supported and installed on your system.perl: warning: Falling back to the standard locale ("C").perl: warning: Setting locale failed.perl: warning: Please check that your locale settings:        LANGUAGE = (unset),        LC_ALL = (unset),        LANG = "zh_CN.UTF-8"    are supported and installed on your system.perl: warning: Falling back to the standard locale ("C").Dictionary preparation succeededutils/prepare_lang.sh --position-dependent-phones false data/local/dict <SIL> data/local/lang data/langFeature "unicode_strings" is not supported by Perl 5.10.1 at utils/validate_dict_dir.pl line 56BEGIN failed--compilation aborted at utils/validate_dict_dir.pl line 56.*Error validating directory data/local/dict*Preparing language models for testarpa2fst --disambig-symbol=#0 --read-symbol-table=data/lang_test_tg/words.txt input/task.arpabo data/lang_test_tg/G.fst ERROR (arpa2fst[5.2]:Input():kaldi-io.cc:742) Error opening input stream data/lang_test_tg/words.txt[ Stack-Trace: ]kaldi::MessageLogger::HandleMessage(kaldi::LogMessageEnvelope const&, char const*)kaldi::MessageLogger::~MessageLogger()kaldi::Input::Input(std::string const&, bool*)main__libc_start_mainarpa2fst() [0x445939]fstisstochastic data/lang_test_tg/G.fst ERROR (fstisstochastic[5.2]:Input():kaldi-io.cc:742) Error opening input stream data/lang_test_tg/G.fst[ Stack-Trace: ]kaldi::MessageLogger::HandleMessage(kaldi::LogMessageEnvelope const&, char const*)kaldi::MessageLogger::~MessageLogger()kaldi::Input::Input(std::string const&, bool*)fst::ReadFstKaldiGeneric(std::string, bool)main__libc_start_mainfstisstochastic() [0x446949]ERROR: SymbolTable::ReadText: Can't open file data/lang_test_tg/words.txtERROR: FstHeader::Read: Bad FST header: standard inputERROR: FstHeader::Read: Bad FST header: standard inputERROR: FstHeader::Read: Bad FST header: tmpdir.g/empty_words.fstSucceeded in formatting data.steps/make_mfcc.sh --nj 1 data/train_yesno exp/make_mfcc/train_yesno mfccutils/validate_data_dir.sh: WARNING: you have only one speaker.  This probably a bad idea.   Search for the word 'bold' in http://kaldi-asr.org/doc/data_prep.html   for more information.Feature "unicode_strings" is not supported by Perl 5.10.1 at utils/validate_text.pl line 72BEGIN failed--compilation aborted at utils/validate_text.pl line 72.steps/compute_cmvn_stats.sh data/train_yesno exp/make_mfcc/train_yesno mfccmake_cmvn.sh: no such file data/train_yesno/feats.scpfix_data_dir.sh: kept all 31 utterances.fix_data_dir.sh: old files are kept in data/train_yesno/.backupsteps/make_mfcc.sh --nj 1 data/test_yesno exp/make_mfcc/test_yesno mfccutils/validate_data_dir.sh: WARNING: you have only one speaker.  This probably a bad idea.   Search for the word 'bold' in http://kaldi-asr.org/doc/data_prep.html   for more information.Feature "unicode_strings" is not supported by Perl 5.10.1 at utils/validate_text.pl line 72BEGIN failed--compilation aborted at utils/validate_text.pl line 72.steps/compute_cmvn_stats.sh data/test_yesno exp/make_mfcc/test_yesno mfccmake_cmvn.sh: no such file data/test_yesno/feats.scpfix_data_dir.sh: kept all 31 utterances.fix_data_dir.sh: old files are kept in data/test_yesno/.backupsteps/train_mono.sh --nj 1 --cmd utils/run.pl --totgauss 400 data/train_yesno data/lang exp/mono0acat: data/lang/oov.int: No such file or directorymkgraph.sh: expected data/lang_test_tg/L.fst to existsteps/decode.sh --nj 1 --cmd utils/run.pl exp/mono0a/graph_tgpr data/test_yesno exp/mono0a/decode_test_yesnodecode.sh: no such file data/test_yesno/split1/1/feats.scpgrep: exp/mono0a/decode_test_yesno/wer_*: No such file or directoryperl: warning: Setting locale failed.perl: warning: Please check that your locale settings:        LANGUAGE = (unset),        LC_ALL = (unset),        LANG = "zh_CN.UTF-8"    are supported and installed on your system.perl: warning: Falling back to the standard locale ("C").

紧接着上面的错误信息:

1、首先解决locale相关的问题:

修改~/.bashrc

在最底部添加 LC_ALL="C" 所以可以这样运行

qifa@ts-server:~$ echo "export LC_ALL=\"C\"">>~/.bashrc
qifa@ts-server:~$ source ~/.bashrc


2、解决Feature "unicode_strings" is not supported by Perl 5.10.1可以看出是版本不支持这个feature:http://perldoc.perl.org/feature.html#The-'unicode_strings'-feature

This feature is available starting with Perl 5.12; was almost fully implemented in Perl 5.14; and extended in Perl 5.16 to cover quotemeta; and extended further in Perl 5.26 to cover the range operator.

那就升级Perl版本了:


最终结果:

[houwenbin@localhost perl-5.26.1]$ sudo rm -rf /usr/bin/perperl        perl5.10.1  perlbug     perldoc     perlivp     perlthanks  perror      [houwenbin@localhost perl-5.26.1]$ sudo rm -rf /usr/bin/perl[houwenbin@localhost perl-5.26.1]$ [houwenbin@localhost perl-5.26.1]$ [houwenbin@localhost perl-5.26.1]$ sudo ln -s /usr/local/perl/bin/perl /usr/bin/perl[houwenbin@localhost perl-5.26.1]$ [houwenbin@localhost perl-5.26.1]$ perl -vThis is perl 5, version 26, subversion 1 (v5.26.1) built for x86_64-linuxCopyright 1987-2017, Larry WallPerl may be copied only under the terms of either the Artistic License or theGNU General Public License, which may be found in the Perl 5 source kit.Complete documentation for Perl, including FAQ lists, should be found onthis system using "man perl" or "perldoc perl".  If you have access to theInternet, point your browser at http://www.perl.org/, the Perl Home Page.[houwenbin@localhost perl-5.26.1]$ [houwenbin@localhost perl-5.26.1]$ cd ~/kaldi-master/egs/yesno/s5/[houwenbin@localhost s5]$ [houwenbin@localhost s5]$ ./run.sh Preparing train and test dataDictionary preparation succeededutils/prepare_lang.sh --position-dependent-phones false data/local/dict <SIL> data/local/lang data/langChecking data/local/dict/silence_phones.txt ...--> reading data/local/dict/silence_phones.txt--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespaces--> data/local/dict/silence_phones.txt is OKChecking data/local/dict/optional_silence.txt ...--> reading data/local/dict/optional_silence.txt--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespaces--> data/local/dict/optional_silence.txt is OKChecking data/local/dict/nonsilence_phones.txt ...--> reading data/local/dict/nonsilence_phones.txt--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespaces--> data/local/dict/nonsilence_phones.txt is OKChecking disjoint: silence_phones.txt, nonsilence_phones.txt--> disjoint property is OK.Checking data/local/dict/lexicon.txt--> reading data/local/dict/lexicon.txt--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespaces--> data/local/dict/lexicon.txt is OKChecking data/local/dict/extra_questions.txt ...--> data/local/dict/extra_questions.txt is empty (this is OK)--> SUCCESS [validating dictionary directory data/local/dict]**Creating data/local/dict/lexiconp.txt from data/local/dict/lexicon.txtfstaddselfloops data/lang/phones/wdisambig_phones.int data/lang/phones/wdisambig_words.int prepare_lang.sh: validating output directoryutils/validate_lang.pl data/langChecking data/lang/phones.txt ...--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespaces--> data/lang/phones.txt is OKChecking words.txt: #0 ...--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespaces--> data/lang/words.txt is OKChecking disjoint: silence.txt, nonsilence.txt, disambig.txt ...--> silence.txt and nonsilence.txt are disjoint--> silence.txt and disambig.txt are disjoint--> disambig.txt and nonsilence.txt are disjoint--> disjoint property is OKChecking sumation: silence.txt, nonsilence.txt, disambig.txt ...--> summation property is OKChecking data/lang/phones/context_indep.{txt, int, csl} ...--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespaces--> 1 entry/entries in data/lang/phones/context_indep.txt--> data/lang/phones/context_indep.int corresponds to data/lang/phones/context_indep.txt--> data/lang/phones/context_indep.csl corresponds to data/lang/phones/context_indep.txt--> data/lang/phones/context_indep.{txt, int, csl} are OKChecking data/lang/phones/nonsilence.{txt, int, csl} ...--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespaces--> 2 entry/entries in data/lang/phones/nonsilence.txt--> data/lang/phones/nonsilence.int corresponds to data/lang/phones/nonsilence.txt--> data/lang/phones/nonsilence.csl corresponds to data/lang/phones/nonsilence.txt--> data/lang/phones/nonsilence.{txt, int, csl} are OKChecking data/lang/phones/silence.{txt, int, csl} ...--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespaces--> 1 entry/entries in data/lang/phones/silence.txt--> data/lang/phones/silence.int corresponds to data/lang/phones/silence.txt--> data/lang/phones/silence.csl corresponds to data/lang/phones/silence.txt--> data/lang/phones/silence.{txt, int, csl} are OKChecking data/lang/phones/optional_silence.{txt, int, csl} ...--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespaces--> 1 entry/entries in data/lang/phones/optional_silence.txt--> data/lang/phones/optional_silence.int corresponds to data/lang/phones/optional_silence.txt--> data/lang/phones/optional_silence.csl corresponds to data/lang/phones/optional_silence.txt--> data/lang/phones/optional_silence.{txt, int, csl} are OKChecking data/lang/phones/disambig.{txt, int, csl} ...--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespaces--> 2 entry/entries in data/lang/phones/disambig.txt--> data/lang/phones/disambig.int corresponds to data/lang/phones/disambig.txt--> data/lang/phones/disambig.csl corresponds to data/lang/phones/disambig.txt--> data/lang/phones/disambig.{txt, int, csl} are OKChecking data/lang/phones/roots.{txt, int} ...--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespaces--> 3 entry/entries in data/lang/phones/roots.txt--> data/lang/phones/roots.int corresponds to data/lang/phones/roots.txt--> data/lang/phones/roots.{txt, int} are OKChecking data/lang/phones/sets.{txt, int} ...--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespaces--> 3 entry/entries in data/lang/phones/sets.txt--> data/lang/phones/sets.int corresponds to data/lang/phones/sets.txt--> data/lang/phones/sets.{txt, int} are OKChecking data/lang/phones/extra_questions.{txt, int} ...Checking optional_silence.txt ...--> reading data/lang/phones/optional_silence.txt--> data/lang/phones/optional_silence.txt is OKChecking disambiguation symbols: #0 and #1--> data/lang/phones/disambig.txt has "#0" and "#1"--> data/lang/phones/disambig.txt is OKChecking topo ...Checking word-level disambiguation symbols...--> data/lang/phones/wdisambig.txt exists (newer prepare_lang.sh)Checking data/lang/oov.{txt, int} ...--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespaces--> 1 entry/entries in data/lang/oov.txt--> data/lang/oov.int corresponds to data/lang/oov.txt--> data/lang/oov.{txt, int} are OK--> data/lang/L.fst is olabel sorted--> data/lang/L_disambig.fst is olabel sorted--> SUCCESS [validating lang directory data/lang]Preparing language models for testarpa2fst --disambig-symbol=#0 --read-symbol-table=data/lang_test_tg/words.txt input/task.arpabo data/lang_test_tg/G.fst LOG (arpa2fst[5.2]:Read():arpa-file-parser.cc:98) Reading \data\ section.LOG (arpa2fst[5.2]:Read():arpa-file-parser.cc:153) Reading \1-grams: section.LOG (arpa2fst[5.2]:RemoveRedundantStates():arpa-lm-compiler.cc:359) Reduced num-states from 1 to 1fstisstochastic data/lang_test_tg/G.fst 1.20397 1.20397Succeeded in formatting data.steps/make_mfcc.sh --nj 1 data/train_yesno exp/make_mfcc/train_yesno mfccutils/validate_data_dir.sh: WARNING: you have only one speaker.  This probably a bad idea.   Search for the word 'bold' in http://kaldi-asr.org/doc/data_prep.html   for more information.Checking data/train_yesno/text ...--> reading data/train_yesno/text--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespacesutils/validate_data_dir.sh: Successfully validated data-directory data/train_yesnosteps/make_mfcc.sh: [info]: no segments file exists: assuming wav.scp indexed by utterance.Succeeded creating MFCC features for train_yesnosteps/compute_cmvn_stats.sh data/train_yesno exp/make_mfcc/train_yesno mfccSucceeded creating CMVN stats for train_yesnofix_data_dir.sh: kept all 31 utterances.fix_data_dir.sh: old files are kept in data/train_yesno/.backupsteps/make_mfcc.sh --nj 1 data/test_yesno exp/make_mfcc/test_yesno mfccutils/validate_data_dir.sh: WARNING: you have only one speaker.  This probably a bad idea.   Search for the word 'bold' in http://kaldi-asr.org/doc/data_prep.html   for more information.Checking data/test_yesno/text ...--> reading data/test_yesno/text--> text seems to be UTF-8 or ASCII, checking whitespaces--> text contains only allowed whitespacesutils/validate_data_dir.sh: Successfully validated data-directory data/test_yesnosteps/make_mfcc.sh: [info]: no segments file exists: assuming wav.scp indexed by utterance.It seems not all of the feature files were successfully processed (29 != 31);consider using utils/fix_data_dir.sh data/test_yesnoLess than 95% the features were successfully generated.  Probably a serious error.steps/compute_cmvn_stats.sh data/test_yesno exp/make_mfcc/test_yesno mfccSucceeded creating CMVN stats for test_yesnofix_data_dir.sh: kept 29 utterances out of 31fix_data_dir.sh: old files are kept in data/test_yesno/.backupsteps/train_mono.sh --nj 1 --cmd utils/run.pl --totgauss 400 data/train_yesno data/lang exp/mono0asteps/train_mono.sh: Initializing monophone system.steps/train_mono.sh: Compiling training graphssteps/train_mono.sh: Aligning data equally (pass 0)steps/train_mono.sh: Pass 1steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 2steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 3steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 4steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 5steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 6steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 7steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 8steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 9steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 10steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 11steps/train_mono.sh: Pass 12steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 13steps/train_mono.sh: Pass 14steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 15steps/train_mono.sh: Pass 16steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 17steps/train_mono.sh: Pass 18steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 19steps/train_mono.sh: Pass 20steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 21steps/train_mono.sh: Pass 22steps/train_mono.sh: Pass 23steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 24steps/train_mono.sh: Pass 25steps/train_mono.sh: Pass 26steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 27steps/train_mono.sh: Pass 28steps/train_mono.sh: Pass 29steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 30steps/train_mono.sh: Pass 31steps/train_mono.sh: Pass 32steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 33steps/train_mono.sh: Pass 34steps/train_mono.sh: Pass 35steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 36steps/train_mono.sh: Pass 37steps/train_mono.sh: Pass 38steps/train_mono.sh: Aligning datasteps/train_mono.sh: Pass 39steps/diagnostic/analyze_alignments.sh --cmd utils/run.pl data/lang exp/mono0asteps/diagnostic/analyze_alignments.sh: see stats in exp/mono0a/log/analyze_alignments.log1 warnings in exp/mono0a/log/update.*.logexp/mono0a: nj=1 align prob=-81.88 over 0.05h [retry=0.0%, fail=0.0%] states=11 gauss=371steps/train_mono.sh: Done training monophone system in exp/mono0atree-info exp/mono0a/tree tree-info exp/mono0a/tree fsttablecompose data/lang_test_tg/L_disambig.fst data/lang_test_tg/G.fst fstminimizeencoded fstpushspecial fstdeterminizestar --use-log=true fstisstochastic data/lang_test_tg/tmp/LG.fst 0.534295 0.533859[info]: LG not stochastic.fstcomposecontext --context-size=1 --central-position=0 --read-disambig-syms=data/lang_test_tg/phones/disambig.int --write-disambig-syms=data/lang_test_tg/tmp/disambig_ilabels_1_0.int data/lang_test_tg/tmp/ilabels_1_0.11399 fstisstochastic data/lang_test_tg/tmp/CLG_1_0.fst 0.534295 0.533859[info]: CLG not stochastic.make-h-transducer --disambig-syms-out=exp/mono0a/graph_tgpr/disambig_tid.int --transition-scale=1.0 data/lang_test_tg/tmp/ilabels_1_0 exp/mono0a/tree exp/mono0a/final.mdl fsttablecompose exp/mono0a/graph_tgpr/Ha.fst data/lang_test_tg/tmp/CLG_1_0.fst fstminimizeencoded fstdeterminizestar --use-log=true fstrmsymbols exp/mono0a/graph_tgpr/disambig_tid.int fstrmepslocal fstisstochastic exp/mono0a/graph_tgpr/HCLGa.fst 0.5342 -0.000422432HCLGa is not stochasticadd-self-loops --self-loop-scale=0.1 --reorder=true exp/mono0a/final.mdl steps/decode.sh --nj 1 --cmd utils/run.pl exp/mono0a/graph_tgpr data/test_yesno exp/mono0a/decode_test_yesnodecode.sh: feature type is deltasteps/diagnostic/analyze_lats.sh --cmd utils/run.pl exp/mono0a/graph_tgpr exp/mono0a/decode_test_yesnosteps/diagnostic/analyze_lats.sh: see stats in exp/mono0a/decode_test_yesno/log/analyze_alignments.logOverall, lattice depth (10,50,90-percentile)=(1,1,2) and mean=1.2steps/diagnostic/analyze_lats.sh: see stats in exp/mono0a/decode_test_yesno/log/analyze_lattice_depth_stats.loglocal/score.sh --cmd utils/run.pl data/test_yesno exp/mono0a/graph_tgpr exp/mono0a/decode_test_yesnolocal/score.sh: scoring with word insertion penalty=0.0,0.5,1.0%WER 0.00 [ 0 / 232, 0 ins, 0 del, 0 sub ] exp/mono0a/decode_test_yesno/wer_10_0.0

阅读全文
0 0
原创粉丝点击