Apertium on Mac OS X (System)

From Apertium
Revision as of 23:33, 28 November 2011 by Btoews (talk | contribs)
Jump to navigation Jump to search

These instructions will help you install Apertium on a system running Mac OS X. Use this page if you have root access to your system.

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 subversion

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

Note: you can now install both apertium and lttoolbox from Macports, although this won't give you the very newest version:

$ sudo port install lttoolbox apertium

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 and download it the same way, eg.

$ svn co http://apertium.svn.sourceforge.net/svnroot/apertium/trunk/apertium-es-ca

Compilation

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

$ PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./autogen.sh
$ 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 /usr/local/share/aclocal
$ automake -a
$ autoconf
$ autoheader
$ automake -a
$ ./configure 

modes not generated

Problem

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

Solution

Try installing gawk

No package 'lttoolbox-3.2' found

Problem
No package 'lttoolbox-3.2' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Solution

do

PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH

before autogen.sh

autogen/make "does not work"

Problem
some problem during autogen/make (what was the problem?)
Solution
$ aclocal -I /usr/local/share/aclocal
$ glibtoolize --force
$ aclocal -I /usr/local/share/aclocal
$ automake -a
$ autoconf
$ autoheader
$ automake -a
$ ./configure --prefix=/usr/local/
$ make
$ sudo make install

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