Apertium on Mac OS X (System)

From Apertium
Jump to navigation Jump to search

These instructions will help you install Apertium on a system running Mac OS/X.

Requirements

The requirements are a full installation of XCode (http://developer.apple.com/tools/xcode/) and Macports (http://www.macports.org/install.php). Then install with Macports the following packages:

$ sudo port install autoconf automake expat flex gettext gperf help2man libiconv libtool \
libxml2 libxslt m4 ncurses ncursesw p5-locale-gettext pcre perl5.8  pkgconfig zlib gawk

(Some of them are necessary just because Macports wants it)

You will also need to edit the file ~/.bash_profile and add /opt/local/bin to the PATH variable. This can also be done each time from the command line as follows:

$ export PATH=/opt/local/bin:$PATH

Note: you can now install lttoolbox from Macports:

$ sudo port install lttoolbox

Downloading

$ svn co http://apertium.svn.sourceforge.net/svnroot/apertium/trunk/lttoolbox
$ svn co http://apertium.svn.sourceforge.net/svnroot/apertium/trunk/apertium

Then choose a language package.

Compilation

For each package (i.e., within their directories lttoolbox, etc.), lttoolbox, apertium and a language package, do:

$ ./autogen.sh --prefix /opt/local
$ make
$ sudo make install

If the above does not work, try:

$ aclocal -I /opt/local/share/aclocal
$ glibtoolize --force
$ aclocal -I /opt/local/share/aclocal
$ automake -a
$ autoconf
$ autoheader
$ automake -a
$ ./configure --prefix=/opt/local/
$ make
$ sudo make install

Troubleshooting

syntax error near unexpected token

Problem

The configure script cannot find the PKG_CHECK_MODULES macro

checking for pcre_compile in -lpcrecpp... yes
./configure: line 19995: syntax error near unexpected token `APERTIUM,'
./configure: line 19995: `PKG_CHECK_MODULES(APERTIUM, dnl'
Solution

Run:

$ aclocal -I /opt/local/share/aclocal
$ automake -a
$ autoconf
$ autoheader
$ automake -a
$ ./configure --prefix=/opt/local

modes not generated

Problem

Everything works fine except the .mode files aren't being generated.

Solution

Try installing gawk

endian_double_util.cc:38: error: ‘fread_unlocked’ was not declared in this scope

Just change the code to use fread instead of fread_unlocked (the latter is just faster).

Or, do this when compiling:

CPPFLAGS=" -Dfread_unlocked=fread " ./autogen.sh && make && sudo make install

See also