2. Installation

The source code for this deliverable can be downloaded from the MOLTO svn repository by:

  svn co svn://molto-project.eu/mgl/wproblems

It will appear into the wproblems directory. But prior to building the system for the natural language interpretation of the word problems, you need to install the external components that are handling the computational aspects of the system.

Software requirements

Third-party software components provide the following functionalities in the system:

  • SWI prolog; (in our architectures, (1) SWI-Prolog version 6.2.2 for i386-darwin11.3.0, (2) SWI-Prolog (Multi-threaded, 64 bits, Version 6.2.6). Set the environment variable SWIPL_LIBDIR to the path to the swi-prolog library. The prototype employs Prolog as domain reasoner for certain schemata of word problems.
  • Scala; (in our architectures, (1) 2.9.2, (2)Scala version 2.10.1 (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_43) - Scala is a general purpose programming language designed to express common programming patterns using both object-oriented and functional paradigms. Conciseness is a key feature of Scala (scalable language). The prototype employs Scala for constructing, from natural language input, a Prolog program that can solve the problem.

In addition, the system requires the availability of the jpl library for accessing Prolog from Java code. It is installed by the prolog installer, check that the jpl.jar exists and write down the path (It will be needed for the configuration step below).

Project-related software components:

  • GF; (in our architecture, version version 3.4 ). GF is used to provide the natural language parsing and generation in the Dialog system.

  • gf-java to use the GF web services from Java; (distributed under lib, version gf-java-0.8.1.jar ).

Install all the components as directed. Now configure by passing SWIPL_LIBDIR for the path to the swi-prolog library and JPL_LIBDIR for the path to the directory containing jpl.jar. In our case:

  ./configure SWIPL_LIBDIR=/opt/local/lib/swipl-6.2.2/lib/i386-darwin11.3.0/ JPL_LIBDIR=/opt/local/lib/swipl-6.2.2/lib/

and then build the system

  make

Comments

Drawnback by all this installation

I tell you, when I read I have all this to install, I die. Is there any way we can host the system online instead? Notice I have not read the full doc, maybe you answer this later.

If not, I will go ahead and install all this stuff (we are not packaging it are we?)

This is a problem you realize for the final showcase (the archival media for the project that the EU Commission is supposed to be able to use for demos). I am beginning to think we have to make a Linux on a USB stick with all the software installed.

Please comment about this too.

Distributing jar files

I suggest we include the jarfile if we can:

  • JPL is released under the terms of the Gnu Library Public License
  • GF-Java is our own, we can simply distribute the jarfile under lib
  • JLine is distributed under the BSD license

We then limit what needs to be installed as much as possible.

I suggest to have configure

I suggest to have configure registered in the svn and drop the autoconf step in the Installation procedure.

--Jordi Saludes

Final Showcase

I agree with the idea behind some kind of live distro showcasing the MOLTO software, but in reality it's a hassle to reboot one's machine into some new OS. As a more practical option, maybe we could have a remote server running all MOLTO software. Then people could ssh or remote desktop to the machine, and avoid needing to reboot their machine.

Yes, Having a linux

Yes, Having a linux distribution on a USB stick with all the components is a great idea.

--Jordi Saludes

Better way to start the GF server

Recent versions of GF support the --document-root parameter. This simplifies the installation (instructions). Also, it's a good idea to run the server in the secure-mode by setting the GF_RESTRICTED environment variable to yes.

$ GF_RESTRICTED=yes gf --server --document-root some_directory

Kaarel

Thanks for this good

Thanks for this good suggestion: I'll do as you said.

--Jordi Saludes