Ошибка при загрузке разделяемой библиотеки при запуске run.sh в рецепте timit / s5 - PullRequest
0 голосов
/ 09 мая 2019

Я пытаюсь запустить рецепт kaldi TIMIT / s5 на удаленном сервере. Инструментарий уже установлен и скомпилирован на сервере. Исходный путь, где инструментарий установлен и скомпилирован, является каталогом «только для чтения», где у меня нет доступа «sudo» для изменения чего-либо там. Для запуска сценариев я скопировал каталоги для рецепта TIMIT в мое местное местоположение. Я изменил KALDI_ROOT (в 'path.sh') на оригинальный каталог, где установлен инструментарий Kaldi. Когда я пытаюсь запустить скрипт 'run.sh', я получаю следующую ошибку:

wav-to-duration: error while loading shared libraries: libkaldi-hmm.so: cannot open shared object file: No such file or directory

Затем я добавил следующую строку в конец файла 'path.sh':

export LD_LIBRARY_PATH="$KALDI_ROOT/src/lib"

Однако тогда я получаю следующую ошибку:

wav-to-duration: error while loading shared libraries: libfst.so.10: cannot open shared object file: No such file or directory

Есть ли какие-либо предложения о том, как изменить файл 'path.sh', чтобы я мог запускать рецепты Kaldi в моем локальном каталоге?

Спасибо за все ответы

1 Ответ

1 голос
/ 22 мая 2019

Я решил проблему. Ошибка связана с неправильной настройкой корневого каталога для библиотек Kaldi. Более того, мне нужно было явно указать библиотеки GCC.8.2.0. Корневые каталоги связаны в скрипте path.sh в папке рецепта timit / s5. Здесь я делюсь измененной версией моего файла path.sh, который успешно запускает общий скрипт run.sh. Обратите внимание, что файл LIBRARY_PATH должен указывать на локальный каталог общих библиотек и каталог для библиотеки openfst (пакет декодирования конечного состояния преобразователя).

export KALDI_ROOT=/import/linux/kaldi
[ -f $KALDI_ROOT/tools/env.sh ] && . $KALDI_ROOT/tools/env.sh
export PATH=$KALDI_ROOT/egs/timit/s5/utils/:$KALDI_ROOT/tools/openfst/bin:$KALDI_ROOT/tools/irstlm/bin/:$PWD:$PATH
[ ! -f $KALDI_ROOT/tools/config/common_path.sh ] && echo >&2 "The standard 
file $KALDI_ROOT/tools/config/common_path.sh is not present -> Exit!" && exit 1
. $KALDI_ROOT/tools/config/common_path.sh

PATH=$PATH:$KALDI_ROOT/tools/openfst
PATH=$PATH:$KALDI_ROOT/src/featbin
PATH=$PATH:$KALDI_ROOT/src/gmmbin
PATH=$PATH:$KALDI_ROOT/src/bin
PATH=$PATH:$KALDI_ROOT//src/nnetbin
export PATH

export LC_ALL=C
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/$KALDI_ROOT/src/lib:$KALDI_ROOT/tools/openfst-1.6.7/lib
...