Blame view

tools/maca/README.md 3.53 KB
Jan Lupa authored
1
2
Maca can be installed using the instructions on nlp.pwr.wroc.pl/redmine/projects/libpltagger/wiki/InstallOnUbuntu11 with the following exceptions:
Jan Lupa authored
3
4
5
6
* 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
Jan Lupa authored
7
        sudo apt-get install libncurses5-dev
Jan Lupa authored
8
9
10
11
12
13
14

* 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:
Jan Lupa authored
15
16
    - before installing Corpus 2
        + in line 25 of corpus2/learn_to_guess/main.cpp the type `ifstream` must be replaced with `std::ifstream`
Jan Lupa authored
17
Jan Lupa authored
18
19
20
21
22
	- 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__)`
Jan Lupa authored
23
Jan Lupa authored
24
        + in line 105 of toki/tests/srx.cpp `BOOST_MESSAGE` must be replaced with `BOOST_TEST_MESSAGE`
Jan Lupa authored
25
Jan Lupa authored
26
27
    - before installing Maca
        + in line 100 of maca/tests/compareconv.cpp `BOOST_MESSAGE` must be replaced with `BOOST_TEST_MESSAGE`
Jan Lupa authored
28
Jan Lupa authored
29
30
31
32
        + 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__)`
Jan Lupa authored
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68

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.