The source code of LUWRAIN can be compiled in several ways for various purposes:
In the sections below this page covers detailed descriptions for all of them. Different ways of compilation are ordered from the most simple to the most sophisticated. However, feel yourself absolutely free to skip any parts, if you are looking anything specific.
LUWRAIN supports compilation both with Apache Ant and with Apache Maven. Compilation with Apache Maven is the most simple, but it comprises not all of the LUWRAIN components, only basic ones without applications, some extensions and support of languages. If you need instructions of complete compilation, please read the following section covering the compilation with Apache Ant.
All of these types of compilation require different steps, so you have to choose any of them to continue reading.
We used to build LUWRAIN in GNU/Linux environment, although in general it's possible to get our jars zcompiled on any machine with installed JDK 1.8. In our base.git repository there is a set of bash-scripts to make compilation process simple and smooth. We know that these scripts work perfectly in Ubuntu, but for all other systems it's necessary to check explicitly whether they give the same result or not. Hopefully, they do, but we don't have any exact information on this. You can compile LUWRAIN on Microsoft Windows as well, but this will require you to create libraries directories manually, what in itself can be rather exhaustive.
In order to get LUWRAIN compiled and ready to launch, you should have on your machine the following software:
Ant takes care about calling javac on all our Java files; bash executes compilation scripts; git fetches our source code to your computer and, finally, g++ and make are used for compilation of JNI-part.
First of all, you should clone the repository by this link:
The easiest way to do that is to run git command as follows:
git clone https://github.com/luwrain/base.git
After that, you should go to base/scripts directory and run the lwr-fetch script there:
This script will take some time to fetch the entire LUWRAIN source code and all supplementary files to your machine. It also fetches some zip-archives with all third-party libraries and sound files, extracting them automatically.