1Building on Windows using  Cygwin
2=================================
3Tested on Cygwin 2.10.0 under Windows 10,
4with link-grammar version RC 5.5.2.
5
6Language bindings
7-----------------
8The build system produces successful Python2&3 and Java bindings.
9Other language bindings have not been tested.
10
11For the Java bindings, install Java and Ant under Windows.
12Make sure, under Windows, that `JAVA_HOME` is set correctly
13and `ant` is the `PATH`.
14
15
16Building
17--------
18Install all the prerequisit tools,
19Also install the desired optional libraries
20
21Note: Installing the library `pcre2` is **required** for correct operation
22since the default REGEX implementation (in libc) is not capable enough.
23
24Use the `configure` command as outlined in the main [README](/README.md#creating-the-system).
25Note that compiling with more than one concurrent process may be extremely slow.
26To make sure only a single process is used supply `make ` with `-j 1`.
27Also, the `make` build-in rules cause a lot of I/O and are not needed here, so
28supplying `make` with the `-r` argument makes it much faster.
29
30`$ make -r -j 1`
31
32`$ make -r install`
33
34The dictionaries are installed by default under
35`/usr/local/share/link-grammar`.
36
37
38
39Running link-parser
40-------------------
41
42* From the sources directory, using cmd.exe Windows console:
43
44Note: ^Z/^D/^C are not supported when running under Cygwin!
45In particular, don't press ^Z - it may crash or stuck the window.
46To exit, use the `!exit` command.
47
48      > PATH-TO-LG-CONF-DIRECTORY\link-parser\link-parser [arguments]
49
50* Form the Cygwin shell:
51
52Before installation (supposing no installed version yet):
53
54      `$ PATH-TO-LG-CONF-DIRECTORY/link-parser/link-parser [args]`
55
56After "make install" (supposing `/usr/local/bin` is in the `PATH`):
57
58      `$ link-parser [arguments]`
59
60To run the executable from other location, liblink-grammar-5.dll needs to be
61in a directory in PATH (e.g. in the directory of the executable).
62
63A helper BAT file link-parser-cygwin.bat is provided (currently under the
64`mingw` directory) for invoking `link-parser`.
65
66For more details, see "RUNNING the program" in the main
67[README](/README.md#running-the-program).
68
69Tests
70-----
71All the tests pass (the Python and C++ tests in the `tests` directory).
72However, the C++ tests that involve multi-threading severely trash the
73system and take very much time to complete.
74