Apertium on Mac OS X (Local)

From Apertium
Jump to navigation Jump to search

This page gives instructions on compiling Apertium on Mac OS/X, it will presume you are installing into a directory called Local inside your home directory. This is slightly more complicated, but more contained. Please replace spectie with the name of your user. You can find the name of your user by typing whoami.

Preparation

$ pwd
$ mkdir Local
$ mkdir Source

Downloading

$ svn co http://apertium.svn.sourceforge.net/svnroot/apertium/trunk/lttoolbox
$ svn co http://apertium.svn.sourceforge.net/svnroot/apertium/trunk/apertium
$ curl -O ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-7.8.tar.gz 
$ curl -O http://pkgconfig.freedesktop.org/releases/pkg-config-0.23.tar.gz 
$ curl -O ftp://xmlsoft.org/libxml2/libxml2-2.7.1.tar.gz

Compiling

First export these environment variables so that binaries and libraries from your local installation are taken before those from the system installation.

$ export PATH=/Users/spectie/Local/bin/:$PATH
$ export PKG_CONFIG_PATH=/Users/spectie/Local/lib/pkgconfig
$ export LD_LIBRARY_PATH=/Users/spectie/Local/lib
$ cd Source

libxml

$ cd libxml2-2.7.1

$ ./configure --prefix=/Users/spectie/Local/
$ make
$ make install

pkg-config

$ cd pkg-config-0.23

$ ./configure --enable-utf8 --prefix=/Users/spectie/Local/
$ make
$ make install

lttoolbox

Note: This is likely to fail in more than one place, check the troubleshooting info below!
$ cd lttoolbox

$ sh autogen.sh --prefix=/Users/spectie/Local/
$ make
$ make install

libpcre

$ cd pcre-7.8

$ ./configure --prefix=/Users/spectie/Local/
$ make
$ make install

apertium

Note: This is likely to fail in more than one place, check the troubleshooting info below!
$ cd apertium

$ sh autogen.sh --prefix=/Users/spectie/Local/
$ make
$ make install

Troubleshooting

Undefined macro #1

Problem

The autogen.sh script complains about an undefined macro when encountering the dnl (comment) string.

configure.ac:112: error: possibly undefined macro: dnl
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
Solution

Run automake -a then autoconf, then ./configure --prefix=/Users/spectie/Local/.

Undefined macro #2

Problem
$ sh autogen.sh --prefix=/Users/spectie/Local/
- libtoolize.
You should add the contents of `/usr/share/aclocal/libtool.m4' to `aclocal.m4'.
- aclocal.
- autoconf.
configure.ac:109: error: possibly undefined macro: dnl
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
Solution

Re-run the autogen.sh command until it works.

syntax error near unexpected token

Problem

The configure script cannot find the PKG_CHECK_MODULES macro

checking for pkg-config... /Users/spectie/Local/bin//pkg-config
./configure: line 19355: syntax error near unexpected token `LTTOOLBOX,'
./configure: line 19355: `PKG_CHECK_MODULES(LTTOOLBOX, dnl'

or

checking for gawk... (cached) awk
./configure: line 2183: syntax error near unexpected token `APERTIUM,'
./configure: line 2183: `  PKG_CHECK_MODULES(APERTIUM, apertium-1.0 >= 1.0.0,'
Solution

Run:

$ aclocal -I /Users/spectie/Local/share/aclocal
$ automake -a
$ autoconf
$ ./configure --prefix=/Users/spectie/Local/