af39b971e691efeb054a6020b20f1538deae5cce
[platform/upstream/openfst.git] / README
1 OpenFst: Release 1.6.5.
2
3 OpenFst is a library for constructing, combining, optimizing, and searching
4 weighted finite-state transducers (FSTs).
5
6 REQUIREMENTS:
7   This version is known to work under Linux using g++ (>= 4.7) and OS X using
8   XCode (>= 5). It is expected to work wherever adequate POSIX (dlopen,
9   ssize_t, basename), C99 (snprintf, strtoll, <stdint.h>), and C++11
10   (<unordered_set>, <unordered_map>, <forward_list>) support is available.
11
12 INSTALLATION:
13   Follow the generic GNU build system instructions in ./INSTALL. We
14   recommend configuring with --enable-static=no for faster compiles.
15
16   Optional features:
17
18   --enable-bin             Enable fst::script and executables (def: yes)
19   --enable-compact-fsts    Enable CompactFst extensions (def: no)
20   --enable-compress        Enable compression extension (def: no)
21   --enable-const-fsts      Enable ConstFst extensions (def: no)
22   --enable-far             Enable FAR extensions (def: no)
23   --enable-grm             Enable all dependencies of OpenGrm (def: no)
24   --enable-linear-fsts     Enable LinearTagger/ClassifierFst extensions (def: no)
25   --enable-lookahead-fsts  Enable LookAheadFst extensions (def: no)
26   --enable-mpdt            Enable MPDT extensions (def: no)
27   --enable-ngram-fsts      Enable NGramFst extensions (def: no)
28   --enable-pdt             Enable PDT extensions (def: no)
29   --enable-python          Enable Python extension (def: no)
30   --enable-special         Enable special-matcher extensions (def: no)
31
32   Configuring with --enable-bin=no gives very fast compiles, but excludes the
33   command line utilities.
34
35   Configuring with --enable-python will attempt to install the Python module to
36   whichever site-packages (or dist-packages, on Debian or Ubuntu) is found
37   during configuration.
38
39   The flag --with-libfstdir specifies where FST extensions should be installed;
40   it defaults to ${libdir}/fst.
41
42   Compiling with -Wall -Wno-sign-compare under g++ should give no warnings from
43   this library.
44
45   If you encounter an error about loading shared objects when attempting to use
46   the library immediately after installation, (e.g, `...cannot open shared
47   object file...`) you may need to refresh your system's shared object cache.
48   On Linux, this is accomplished by invoking ldconfig; the corresponding command
49   on OS X is called update_dyld_shared_cache. Both of these require superuser
50   privileges (and so should be executed with sudo).
51
52 USAGE:
53   Assuming you've installed under the default /usr/local, the FST binaries are
54   found on /usr/local/bin.
55
56   To use in your own program, include <fst/fstlib.h> and compile with 
57   -I/usr/local/include. The compiler must support C++11 (for g++ add the flag
58   -std=c++11). Link against /usr/local/lib/libfst.so and -ldl. Set your
59   LD_LIBRARY_PATH (or equivalent) to contain /usr/local/lib. The linking is,
60   by default, dynamic so that the Fst and Arc type DSO extensions can be used
61   correctly if desired. Any extensions will be found under /usr/local/lib/fst
62   or /usr/local/include/fst/extensions.
63
64 DOCUMENTATION:
65   See www.openfst.org for general documentation.
66   See ./NEWS for updates since the last release.