Я пытаюсь скомпилировать следующий код, используя gcc
в Ubuntu 10.04
#include <fst/fstlib.h>
namespace fst {
// Reads in an input FST.
StdVectorFst *input = StdVectorFst::Read("input.fst");
// Reads in the transduction model.
StdVectorFst *model = StdVectorFst::Read("model.fst");
// The FSTs must be sorted along the dimensions they will be joined.
// In fact, only one needs to be so sorted.
// This could have instead been done for "model.fst" when it was created.
ArcSort(input, StdOLabelCompare());
ArcSort(model, StdILabelCompare());
// Container for composition result.
StdVectorFst result;
// Creates the composed FST.
Compose(*input, *model, &result);
// Just keeps the output labels.
Project(&result, PROJECT_OUTPUT);
// Writes the result FST to a file.
result.Write("result.fst");
}
Это дает следующую ошибку
Openfstexample.cpp:1:24: fatal error: fst/fstlib.h: No such file or directory
compilation terminated.
Обратите внимание, что я уже установил Openfst с http://www.openfst.org/
Есть какие-нибудь подсказки?
Вам нужно связать библиотеку openfst во время компиляции.
Пытаться:
gcc -lfst <filename>
[Убедитесь, что у вас установлена библиотека в / usr / local / lib]
или попробуйте:
gcc -L /usr/local/lib/libfst.dylib <filename>