OpenGrm NGram README

OpenGrm NGram - Release 1.3

The OpenGrm NGram library is used for making and modifying n-gram language models encoded as weighted finite-state transducers (FSTs). It makes use of functionality in the OpenFst library to create, access and manipulate n-gram models.


This version is known to work under Linux using g++ (≥ 4.6) and MacOS X using XCode 5. Expected to work wherever adequate POSIX (dlopen, ssize_t, basename), c99 (snprintf, strtoll, <stdint.h>), and C++11 (<ordered_set>, <ordered_map>, <forward_list>) support are available. T It assumes you have installed OpenFst ( 1.5.2 or higher and have configured it with it with the --enable-far flag.


Follow the generic GNU build system instructions in ./INSTALL. We recommend configuring with --enable-static=no for faster compiles.

Configuring with --enable-bin=no gives very fast compiles, but excludes the command line utilities.

Compiling with -Wall -Wno-sign-compare under g++ should give no warnings from this library.

NOTE: In some versions of MacOS X we have noticed a problem with configure whereby it fails to find fst.h. If this occurs, try configuring as follows:

CPPFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib ./configure


Assuming you've installed under the default /usr/local, the GRM binaries are found on /usr/local/bin. Headers will be in /usr/local/include/ngram, and libraries in /usr/local/lib.

To use in your own programs you will need to include <ngram/ngram.h>. Compile with '-I /usr/local/include' and link against /usr/local/lib/, /usr/local/lib/fst/ and /usr/local/lib/ Set your LD_LIBRARY_PATH (or equivalent) to contain /usr/local/lib.

The linking is, by default, dynamic so that the Fst and Arc type DSO extensions can be used correctly if desired.


See for general documentation.

See ./NEWS for updates since the last release.

Topic revision: r8 - 2017-02-07 - CyrilAllauzen
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback