Apertium on Ubuntu or Debian

From Apertium
Revision as of 12:38, 10 December 2009 by Unhammer (talk | contribs)
Jump to navigation Jump to search

If you just want to use Apertium for translation, and don't want to develop anything, you can probably just search for, tick off and install Apertium and your favorite language pairs in Synaptic. This should install the required dependencies too.

If you want to contribute to Apertium or change how it runs in any way, you'll want to install from SVN. Read on below.

Installing by SVN (for all versions of Ubuntu)

First off, install the prerequisites. Open a terminal window and type

sudo apt-get install subversion build-essential g++ pkg-config libxml2 libxml2-dev libxml2-utils xsltproc flex automake autoconf libtool libpcre3-dev  

enter your password

Wait till the packages are downloaded and installed.

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

Note: If you have limited bandwidth or disk space, please follow Minimal installation from SVN instead.

Go to lttoolbox directory with

cd apertium/lttoolbox

Then launch autogen.sh


Launch make


That last command may takes some minutes.

sudo make install
sudo ldconfig
 cd .. 
 cd apertium 
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./autogen.sh
sudo make install
sudo ldconfig

You have then to compile the language pairs that you want to use. It is the same procedure for every pair, we would give an example with apertium-fr-es

cd ..
cd apertium-fr-es/
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./autogen.sh
sudo make install

Make a test

echo "J'ai deux frères" | apertium fr-es

Replace $USER with your Ubuntu user name.

If you edit the linguistics data, do not forget to type "make" to update.

To compile all the pairs without typing each directory once you can use the following script :

list=`ls -d apertium-??-??` # list of folders with a name like apertium-xx-xx
for folder in $list 
 cd $folder >> ../compile.txt
 PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./autogen.sh >> ../compile.txt
 make >> ../compile.txt
 sudo make install >> ../compile.txt
 cd ..

Inside compile.txt you can see some of the results of the compilation.

Dapper Drake (6.06 LTS)

Several programs that are needed cannot be installed easily on Dapper Drake, because the version available with apt-get are too old. We suggest to install a newer version of Ubuntu as for example Edgy Eft or Feisty Fawn

Edgy Eft (6.10)

This is guide to install Apertium under Ubuntu Edgy Eft, aka Ubuntu 6.10

Installing tarball (tar.gz)

The tarball howto is not finnished yet.

Go to http://sourceforge.net/project/showfiles.php?group_id=143781&package_id=159345 and download the latest version

tar xzvf lttoolbox-2.0.3.tar.gz (or put the name of a newer version) cd lttoolbox-2.0.3/ ./configure sudo su (enter your password) make

Go to http://sourceforge.net/project/showfiles.php?group_id=143781&package_id=157932 and download the latest version (2.0.3 as of June 2007)

tar xzvf apertium-2.0.3.tar.gz (or put the name of a newer version) cd apertium-2.0.3.tar.gz ./configure

Feisty (7.04)

From Ubuntu's repository

An old version of Apertium is available for Feisty (http://packages.ubuntu.com/feisty/libs/apertium)

Example: installing apertium and apertium-es-ca sudo apt-get install apertium apertium-es-ca or System -> Administration -> Synaptic -> Search apertium-es-ca -> Install

Gutsy Gibbon (7.10)

There is an apertium version in ubuntu repository and you can do the same like Feisty.

Hardy Heron (8.04 LTS)

There is an apertium version in ubuntu repository. Try with Synaptic There are backports of the Apertium 3.1 packages for Hardy at pgquiles' PPA

Next releases

Try with Synaptic


‘rpl_malloc’ was not declared in this scope

If you get:

make check output
apertium_destxt.o apertium_destxt.cc
apertium_destxt.cc: In function ‘void* yyalloc(yy_size_t)’:
apertium_destxt.cc:2017: error: ‘rpl_malloc’ was not declared in this scope
apertium_destxt.cc: In function ‘void* yyrealloc(void*, yy_size_t)’:
apertium_destxt.cc:2029: error: ‘rpl_realloc’ was not declared in this scope
make[1]: *** [apertium_destxt.o] Error 1
make[1]: Leaving directory `/home/surge/Resources/apertium/apertium-3.1.0/apertium'

Then the best thing to do is comment out the lines:


From the configure.ac and then re-run autogen.sh.


This documentation is partly based on the following resources: