Maca can be installed using the instructions on nlp.pwr.wroc.pl/redmine/projects/libpltagger/wiki/InstallOnUbuntu11 with the following exceptions: * The package libboost-all-dev can be installed in place of libboost1.42-all-dev as the latter might be unavailable. * It might also be necessary to install ncurses using sudo apt-get install libncurses5-dev * Instead of using adding Bartosz Zaborowski's repository one can download Morfeusz directly from ppa.launchpad.net/bartosz-zaborowski/nlp/ubuntu/pool/main/m/morfeusz-sgjp/morfeusz-sgjp_0.81-1~precise_amd64.deb * Before installing SFST in lines 445 and 449 of maca/third_party/SFST-1.2/SFST/src/fst.C the identifier `it` must be replaced with `iter` (or any other non-conflicting identifier). * Additionally with newer versions of boost the following changes become necessary: - before installing Corpus 2 + in line 25 of corpus2/learn_to_guess/main.cpp the type `ifstream` must be replaced with `std::ifstream` - before installing Toki + in lines 223-224 of toki/tests/compare.cpp the call `boost::unit_test::make_test_case(boost::bind(test_one_item, ci), name)` must be replaced with `boost::unit_test::make_test_case(boost::bind(test_one_item, ci), name, __FILE__, __LINE__)` + in line 105 of toki/tests/srx.cpp `BOOST_MESSAGE` must be replaced with `BOOST_TEST_MESSAGE` - before installing Maca + in line 100 of maca/tests/compareconv.cpp `BOOST_MESSAGE` must be replaced with `BOOST_TEST_MESSAGE` + in lines 207-208 of maca/tests/compareconv.cpp the call `boost::unit_test::make_test_case(boost::bind(test_one_item, ci), name)` must be replaced with `boost::unit_test::make_test_case(boost::bind(test_one_item, ci), name, __FILE__, __LINE__)` For an example usage of Maca's interactive mode (in OCaml) see maca_test.ml Below are the contents of the original README file. DEPENDENCIES Maca requires several development packages in order to be built, primarily: * Corpus2 and libpwrutils (both from the corpus2 repository) * Toki Other dependencies (some of them indirect via the two libraries above) are: * ICU (libicu-dev) * Boost libraries, 1.41 or 1.42 (libboost1.42-all-dev); not tested on newer versions * Loki (libloki-dev) * LibXML++ (libxml++2.6-dev) * bison and flex Plugins require other libraries that are optional: * The SFST plugin requires the SFST library 1.2 (see below) * The Morfeusz plugin requires the Morfeusz library and header * The Guesser plugin requires the Guesser package from TaKIPI / Corpus SFST note: The SFST package included in Ubuntu and Debian repositories (libsfst-dev) is apparently missing required header files. The sources downloadable from ims.uni-stuttgart.de in turn need some Makefile modifications to build and install the library and headers. There are two possibilities to overcome this: 1. Install the version with modified Makefile contained in third_party directory of this package. 2. Install the Debian package libsfst1-1.2-0-dev, then download the 1.2 sources and copy the missing header files into the proper system header dir (presumably /usr/include/sfst-1.0/sfst/). Make sure those files are given read permissions. USAGE See the maca-analyse and maca-convert binaries. NOTES Spurious "array subscript is above array bounds" warnings originating in bits/stl_algo seem to be an artifact of gcc4.4's overly-eager correctness checking in conjunction with boost::algorithm::split and boost::is_any_of. Apparently, they are harmless.