69 |
11 Feb 06 |
jari |
$Id$ |
69 |
11 Feb 06 |
jari |
2 |
|
317 |
28 May 07 |
peter |
3 |
---------------------------------------------------------------------- |
317 |
28 May 07 |
peter |
4 |
{{{ |
409 |
29 Aug 07 |
peter |
Copyright (C) 2005, 2006 Jari Häkkinen, Peter Johansson |
317 |
28 May 07 |
peter |
Copyright (C) 2007 Peter Johansson |
665 |
16 Apr 08 |
jari |
Copyright (C) 2008 Jari Häkkinen |
95 |
05 Apr 06 |
jari |
8 |
|
95 |
05 Apr 06 |
jari |
This file is part of WeNNI, |
825 |
26 Nov 08 |
jari |
http://baseplugins.thep.lu.se/wiki/se.lu.thep.WeNNI |
95 |
05 Apr 06 |
jari |
11 |
|
95 |
05 Apr 06 |
jari |
WeNNI is free software; you can redistribute it and/or modify it under |
95 |
05 Apr 06 |
jari |
the terms of the GNU General Public License as published by the Free |
824 |
26 Nov 08 |
jari |
Software Foundation; either version 3 of the License, or (at your |
95 |
05 Apr 06 |
jari |
option) any later version. |
95 |
05 Apr 06 |
jari |
16 |
|
95 |
05 Apr 06 |
jari |
WeNNI is distributed in the hope that it will be useful, but WITHOUT |
95 |
05 Apr 06 |
jari |
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
95 |
05 Apr 06 |
jari |
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
95 |
05 Apr 06 |
jari |
for more details. |
95 |
05 Apr 06 |
jari |
21 |
|
95 |
05 Apr 06 |
jari |
You should have received a copy of the GNU General Public License |
824 |
26 Nov 08 |
jari |
along with WeNNI. If not, see <http://www.gnu.org/licenses/>. |
317 |
28 May 07 |
peter |
24 |
}}} |
317 |
28 May 07 |
peter |
25 |
---------------------------------------------------------------------- |
95 |
05 Apr 06 |
jari |
26 |
|
95 |
05 Apr 06 |
jari |
27 |
|
69 |
11 Feb 06 |
jari |
If you think the instructions are worthless or stupid or maybe both, |
69 |
11 Feb 06 |
jari |
please tell me and I'll try to improve them. Even better, tell me how |
70 |
13 Feb 06 |
jari |
to improve them. My email address is jari@thep.lu.se |
69 |
11 Feb 06 |
jari |
31 |
|
389 |
14 Aug 07 |
peter |
This package can be built in three different modes: base2, base1, and |
389 |
14 Aug 07 |
peter |
stand-alone. The base2 mode is default and the mode you should use if |
389 |
14 Aug 07 |
peter |
you plan on running WeNNI as plugin to BASE2. The base1 mode is the |
665 |
16 Apr 08 |
jari |
old (classic) mode similar to WeNNI 0.6 (or earlier). This is the mode |
389 |
14 Aug 07 |
peter |
you should use if you plan on using WeNNI as a plugin to BASE1. The |
389 |
14 Aug 07 |
peter |
stand-alone mode is intended for you who want to use the WeNNI |
389 |
14 Aug 07 |
peter |
algorithm independently of BASE. The different modes build and require |
389 |
14 Aug 07 |
peter |
different things. You choose the mode by giving the `configure` script |
823 |
26 Nov 08 |
jari |
the appropriate option. See below for more details on how to compile |
823 |
26 Nov 08 |
jari |
the package in the different modes. |
71 |
14 Feb 06 |
jari |
42 |
|
69 |
11 Feb 06 |
jari |
43 |
|
389 |
14 Aug 07 |
peter |
44 |
|
823 |
26 Nov 08 |
jari |
= General requirements = |
389 |
14 Aug 07 |
peter |
46 |
|
823 |
26 Nov 08 |
jari |
General requirements to build the package are that you work in a |
823 |
26 Nov 08 |
jari |
decent computing environment where you have access to tools such as |
854 |
01 Dec 08 |
jari |
make and a standards compliant C++ compiler. Since parts of the |
854 |
01 Dec 08 |
jari |
algorithms in WeNNI depends on the GNU scientific library it is |
823 |
26 Nov 08 |
jari |
required. GSL can be downloaded from http://www.gnu.org/software/gsl/. |
389 |
14 Aug 07 |
peter |
52 |
|
389 |
14 Aug 07 |
peter |
53 |
|
389 |
14 Aug 07 |
peter |
54 |
|
823 |
26 Nov 08 |
jari |
= BASE 2 mode = |
413 |
30 Aug 07 |
peter |
56 |
|
823 |
26 Nov 08 |
jari |
The core WeNNI algorithms are implemented in C++ and to be useful in |
823 |
26 Nov 08 |
jari |
BASE2 a Java wrapper is required. BASE2 only accepts plug-ins written |
823 |
26 Nov 08 |
jari |
in the Java programming language hence a Java wrapper is provided with |
823 |
26 Nov 08 |
jari |
WeNNI for BASE2. The wrapper will export appropriate data from the |
823 |
26 Nov 08 |
jari |
BASE2 server, run the WeNNI binary, and import data back to the |
823 |
26 Nov 08 |
jari |
server. |
413 |
30 Aug 07 |
peter |
63 |
|
844 |
01 Dec 08 |
jari |
== Short instructions == |
844 |
01 Dec 08 |
jari |
65 |
|
844 |
01 Dec 08 |
jari |
It can be this easy: |
844 |
01 Dec 08 |
jari |
67 |
|
844 |
01 Dec 08 |
jari |
1. Download and unpack WeNNI and `cd` to the root directory of the |
844 |
01 Dec 08 |
jari |
distribution. |
844 |
01 Dec 08 |
jari |
70 |
|
844 |
01 Dec 08 |
jari |
2. If you haven't access to a BASE2 installation or prefer to use the |
844 |
01 Dec 08 |
jari |
standard compilation components, run the configure script with |
854 |
01 Dec 08 |
jari |
73 |
{{{ |
854 |
01 Dec 08 |
jari |
$ ./configure --with-plugindir=/path/to/base/plugin-directory/wenni |
854 |
01 Dec 08 |
jari |
$ make |
854 |
01 Dec 08 |
jari |
$ make check |
854 |
01 Dec 08 |
jari |
$ make install-plugin |
854 |
01 Dec 08 |
jari |
78 |
}}} |
844 |
01 Dec 08 |
jari |
79 |
|
854 |
01 Dec 08 |
jari |
If you have problems check the pre-requisites below. |
844 |
01 Dec 08 |
jari |
81 |
|
823 |
26 Nov 08 |
jari |
== Pre-requisite == |
389 |
14 Aug 07 |
peter |
83 |
|
823 |
26 Nov 08 |
jari |
1. Java 1.6. |
389 |
14 Aug 07 |
peter |
85 |
|
844 |
01 Dec 08 |
jari |
2. A working BASE2 installation or Internet connection. Some BASE2 |
823 |
26 Nov 08 |
jari |
program libraries are required for the creation of the wrapper |
844 |
01 Dec 08 |
jari |
plug-in. Required libraries will be downloaded automatically, or |
844 |
01 Dec 08 |
jari |
local libraries can be used. |
389 |
14 Aug 07 |
peter |
90 |
|
854 |
01 Dec 08 |
jari |
3. Version 0.1 of !PluginUtilities (http://baseplugins.thep.lu.se) |
854 |
01 Dec 08 |
jari |
package. Needed for creation of the Java wrapper. If the package |
854 |
01 Dec 08 |
jari |
is not available it will automatically be downloaded during the |
854 |
01 Dec 08 |
jari |
compilation process. |
389 |
14 Aug 07 |
peter |
95 |
|
823 |
26 Nov 08 |
jari |
4. BASE 2.9 or later for plug-in use. Earlier versions may work but |
823 |
26 Nov 08 |
jari |
it is not tested. |
389 |
14 Aug 07 |
peter |
98 |
|
854 |
01 Dec 08 |
jari |
5. Optionally, for testing, Perl (http://www.cpan.org/). The test |
823 |
26 Nov 08 |
jari |
programs can be run manually, see README for details. |
389 |
14 Aug 07 |
peter |
101 |
|
844 |
01 Dec 08 |
jari |
== Automatic download of required BASE components == |
844 |
01 Dec 08 |
jari |
103 |
|
844 |
01 Dec 08 |
jari |
During the build process and depending on configuration options, |
854 |
01 Dec 08 |
jari |
required program libraries will be downloaded from the official BASE |
854 |
01 Dec 08 |
jari |
sites, http://base2.thep.lu.se/base and |
854 |
01 Dec 08 |
jari |
http://baseplugins.thep.lu.se. If you feel uncomfortable with this |
854 |
01 Dec 08 |
jari |
procedure you need to do some manual work. |
844 |
01 Dec 08 |
jari |
109 |
|
844 |
01 Dec 08 |
jari |
1. If you have no working BASE2 installation, download the latest |
844 |
01 Dec 08 |
jari |
BASE2 binary package from http://base.thep.lu.se and unpack |
844 |
01 Dec 08 |
jari |
it. There is no need for further work, use the created directory |
844 |
01 Dec 08 |
jari |
as the path for the `--with-basedir` option given to the configure |
844 |
01 Dec 08 |
jari |
script below. |
844 |
01 Dec 08 |
jari |
115 |
|
854 |
01 Dec 08 |
jari |
2. Download the !PluginUtilities package from |
854 |
01 Dec 08 |
jari |
http://base.thep.lu.se/wiki/net.sf.basedb.pluginutilities and |
854 |
01 Dec 08 |
jari |
place the package file in directory `base/base2`. The install |
854 |
01 Dec 08 |
jari |
process will use this file automatically but beware, a `make |
854 |
01 Dec 08 |
jari |
distclean` will erase the file (but `make clean` will not). This |
854 |
01 Dec 08 |
jari |
WeNNI package is known to work with version 0.1 of the |
854 |
01 Dec 08 |
jari |
!PluginUtilities package (only the latest known version will be |
854 |
01 Dec 08 |
jari |
given here), and the stated version is the one automatically |
854 |
01 Dec 08 |
jari |
downloaded in the build process. |
844 |
01 Dec 08 |
jari |
125 |
|
823 |
26 Nov 08 |
jari |
== Building and installing the plug-in (WeNNI and the Java wrapper) == |
389 |
14 Aug 07 |
peter |
127 |
|
823 |
26 Nov 08 |
jari |
1. Download and unpack WeNNI and `cd` to the root directory of the |
823 |
26 Nov 08 |
jari |
distribution. |
389 |
14 Aug 07 |
peter |
130 |
|
823 |
26 Nov 08 |
jari |
2. If you haven't access to a BASE2 installation or prefer to use the |
823 |
26 Nov 08 |
jari |
standard compilation components, run the configure script with |
854 |
01 Dec 08 |
jari |
133 |
{{{ |
854 |
01 Dec 08 |
jari |
$ ./configure |
854 |
01 Dec 08 |
jari |
135 |
}}} |
844 |
01 Dec 08 |
jari |
This will automatically download required BASE related libraries |
844 |
01 Dec 08 |
jari |
from the official BASE package repositories (see output from the |
854 |
01 Dec 08 |
jari |
configure script on details about the downloads). |
854 |
01 Dec 08 |
jari |
[[br]] [[br]] |
854 |
01 Dec 08 |
jari |
There is a possibility to use the build tools to automatically |
823 |
26 Nov 08 |
jari |
install the package. In this case you may want to change the |
823 |
26 Nov 08 |
jari |
default plug-in installation path. |
854 |
01 Dec 08 |
jari |
143 |
{{{ |
854 |
01 Dec 08 |
jari |
$ ./configure --with-plugindir=DIR |
854 |
01 Dec 08 |
jari |
145 |
}}} |
844 |
01 Dec 08 |
jari |
The default plug-in installation directory is the directory |
856 |
02 Dec 08 |
jari |
plugins/se/lu/thep/wenni rooted in `basedir`. If you prefer to |
856 |
02 Dec 08 |
jari |
install the plug-in manually you must place `nni`, `WeNNI.jar`, |
856 |
02 Dec 08 |
jari |
and `PluginUtilities-0.1pre.jar` in the same installation |
856 |
02 Dec 08 |
jari |
directory. |
854 |
01 Dec 08 |
jari |
[[br]] [[br]] |
823 |
26 Nov 08 |
jari |
If you prefer to compile WeNNI Java wrapper using your local BASE2 |
823 |
26 Nov 08 |
jari |
installation. This is only needed if you have made local changes |
823 |
26 Nov 08 |
jari |
affecting plugins and where these modifications are required in |
823 |
26 Nov 08 |
jari |
the WeNNI Java wrapper. You should know if this is required, if |
823 |
26 Nov 08 |
jari |
you do not know simply go for the above option. So, if you know do |
854 |
01 Dec 08 |
jari |
157 |
{{{ |
854 |
01 Dec 08 |
jari |
$ ./configure --with-basedir=/path/to/base |
854 |
01 Dec 08 |
jari |
159 |
}}} |
844 |
01 Dec 08 |
jari |
where `/path/to/base` should point to the directory containing |
844 |
01 Dec 08 |
jari |
directory `www`. |
854 |
01 Dec 08 |
jari |
[[br]] [[br]] |
887 |
05 Dec 08 |
jari |
''Some notes on configure options:'' |
887 |
05 Dec 08 |
jari |
[[br]] [[br]] |
887 |
05 Dec 08 |
jari |
The configure script accepts |
854 |
01 Dec 08 |
jari |
a few options that may be of interest. You can provide |
854 |
01 Dec 08 |
jari |
`./configure` with BASE2 location information with |
854 |
01 Dec 08 |
jari |
`--with-basedir=BASEDIR`. This information is used to find jar |
854 |
01 Dec 08 |
jari |
files such as `BASE2Core.jar` needed for compilation. The plug-in |
854 |
01 Dec 08 |
jari |
installation directory can be changed using `./configure` option |
854 |
01 Dec 08 |
jari |
`--with-plugindir=DIR`. Files will be installed in |
854 |
01 Dec 08 |
jari |
`<DIR>`. Default `DIR` is set to |
887 |
05 Dec 08 |
jari |
`<BASEDIR>/plugins/se/lu/thep/wenni/`. |
887 |
05 Dec 08 |
jari |
[[br]] [[br]] |
887 |
05 Dec 08 |
jari |
You may use `with-gsl=DIR` |
823 |
26 Nov 08 |
jari |
to provide information on GSL location. The option `enable-debug` |
823 |
26 Nov 08 |
jari |
turns on debug options on the compilation of binary `nni` |
823 |
26 Nov 08 |
jari |
(e.g. enables assertions). |
887 |
05 Dec 08 |
jari |
[[br]] [[br]] |
887 |
05 Dec 08 |
jari |
The Java compiler sometimes fails to recognize the character |
887 |
05 Dec 08 |
jari |
encoding of the source files. Use |
887 |
05 Dec 08 |
jari |
`--with-javasourceencoding=coding` to set the encoding of source |
887 |
05 Dec 08 |
jari |
files. You can find available encodings by doing `man javac`. |
823 |
26 Nov 08 |
jari |
184 |
|
823 |
26 Nov 08 |
jari |
3. Now build using |
854 |
01 Dec 08 |
jari |
186 |
{{{ |
854 |
01 Dec 08 |
jari |
$ make |
854 |
01 Dec 08 |
jari |
188 |
}}} |
823 |
26 Nov 08 |
jari |
If all went well `nni` was created in directory `bin/nni` as well |
823 |
26 Nov 08 |
jari |
as `WeNNI.jar` in directory `base/base2/`. |
413 |
30 Aug 07 |
peter |
191 |
|
823 |
26 Nov 08 |
jari |
4. Optionally, run the test programs |
854 |
01 Dec 08 |
jari |
193 |
{{{ |
854 |
01 Dec 08 |
jari |
$ make check |
854 |
01 Dec 08 |
jari |
195 |
}}} |
823 |
26 Nov 08 |
jari |
196 |
|
823 |
26 Nov 08 |
jari |
5. Install files using |
854 |
01 Dec 08 |
jari |
198 |
{{{ |
854 |
01 Dec 08 |
jari |
$ make install-plugin |
854 |
01 Dec 08 |
jari |
200 |
}}} |
858 |
02 Dec 08 |
jari |
If you prefer to install the plug-in manually you must place |
858 |
02 Dec 08 |
jari |
`nni`, `WeNNI.jar`, and `PluginUtilities-0.1pre.jar` in the same |
858 |
02 Dec 08 |
jari |
installation directory. |
858 |
02 Dec 08 |
jari |
[[br]] [[br]] |
853 |
01 Dec 08 |
jari |
Note! `make install` will install in location `${exec_prefix}/bin` |
858 |
02 Dec 08 |
jari |
which may be something else than your BASE plugin directory. |
853 |
01 Dec 08 |
jari |
207 |
|
823 |
26 Nov 08 |
jari |
6. Make BASE2 aware of the plugin, see BASE2 documentation |
858 |
02 Dec 08 |
jari |
http://base.thep.lu.se/chrome/site/doc/html/index.html and use |
858 |
02 Dec 08 |
jari |
the below information with appropriate change of Path |
858 |
02 Dec 08 |
jari |
211 |
{{{ |
858 |
02 Dec 08 |
jari |
Class: se.lu.thep.wenni.WeNNI |
858 |
02 Dec 08 |
jari |
Path : /path/to/base/pluginsse/lu/thep/wenni-0.7/WeNNI.jar |
858 |
02 Dec 08 |
jari |
214 |
}}} |
858 |
02 Dec 08 |
jari |
Path should be the absolute path to the WeNNI.jar file. |
413 |
30 Aug 07 |
peter |
216 |
|
413 |
30 Aug 07 |
peter |
217 |
|
389 |
14 Aug 07 |
peter |
218 |
|
823 |
26 Nov 08 |
jari |
= BASE 1 mode = |
69 |
11 Feb 06 |
jari |
220 |
|
823 |
26 Nov 08 |
jari |
This section is not well tested. Please report success or failure |
823 |
26 Nov 08 |
jari |
following these BASE1 related instructions. |
71 |
14 Feb 06 |
jari |
223 |
|
823 |
26 Nov 08 |
jari |
The core WeNNI algorithms are implemented in C++ and to be useful in |
823 |
26 Nov 08 |
jari |
BASE1 a Perl wrapper is used. The wrapper will parse the from the |
823 |
26 Nov 08 |
jari |
BASE1 server exported data file, run the WeNNI binary, and generate a |
823 |
26 Nov 08 |
jari |
data file for import of data back to the server. |
71 |
14 Feb 06 |
jari |
228 |
|
823 |
26 Nov 08 |
jari |
== Pre-requisite == |
69 |
11 Feb 06 |
jari |
230 |
|
823 |
26 Nov 08 |
jari |
1. Perl (http://www.cpan.org/) for testing and plug-in execution in |
823 |
26 Nov 08 |
jari |
the BASE1 server environment. The test programs can be run |
823 |
26 Nov 08 |
jari |
manually, see README for details. |
70 |
13 Feb 06 |
jari |
234 |
|
823 |
26 Nov 08 |
jari |
2. A working BASE1 installation, or download the BASE1 plug-in |
823 |
26 Nov 08 |
jari |
development kit. |
71 |
14 Feb 06 |
jari |
237 |
|
823 |
26 Nov 08 |
jari |
== Preparing WeNNI build for BASE1 == |
71 |
14 Feb 06 |
jari |
239 |
|
823 |
26 Nov 08 |
jari |
1. Download and unpack WeNNI. `cd` to the root directory of the |
854 |
01 Dec 08 |
jari |
distribution. |
69 |
11 Feb 06 |
jari |
242 |
|
823 |
26 Nov 08 |
jari |
2. If you do not have access to a working BASE1 installation do the |
823 |
26 Nov 08 |
jari |
following steps; Download the BASE1 plug-in development kit from |
823 |
26 Nov 08 |
jari |
http://baseplugins.thep.lu.se/wiki/PluginDownload, unpack the |
823 |
26 Nov 08 |
jari |
package in the WeNNI root directory, compile the package, and then |
823 |
26 Nov 08 |
jari |
create a symbolic link to this directory. Basically, after |
823 |
26 Nov 08 |
jari |
download, issue the following sequence of commands in to prepare |
823 |
26 Nov 08 |
jari |
the devkit for WeNNI: |
854 |
01 Dec 08 |
jari |
250 |
{{{ |
823 |
26 Nov 08 |
jari |
$ tar zxpf BASE-plugindevkit-1.2.17.tar.gz |
823 |
26 Nov 08 |
jari |
$ cd BASE-plugindevkit-1.2.17/bogus_base |
823 |
26 Nov 08 |
jari |
$ ./bootstrap |
823 |
26 Nov 08 |
jari |
$ ./configure |
823 |
26 Nov 08 |
jari |
$ make |
823 |
26 Nov 08 |
jari |
$ cd ../.. |
823 |
26 Nov 08 |
jari |
$ ln -s BASE-plugindevkit-1.2.17 BASE-plugindevkit |
854 |
01 Dec 08 |
jari |
258 |
}}} |
86 |
04 Apr 06 |
jari |
259 |
|
838 |
29 Nov 08 |
peter |
== Building and installing the plug-in (WeNNI with support) == |
69 |
11 Feb 06 |
jari |
261 |
|
823 |
26 Nov 08 |
jari |
1. You should already have downloaded WeNNI above if not please |
854 |
01 Dec 08 |
jari |
return to the previous section. `cd` to the root directory of the |
854 |
01 Dec 08 |
jari |
distribution. |
69 |
11 Feb 06 |
jari |
265 |
|
823 |
26 Nov 08 |
jari |
2. Run configure script with |
854 |
01 Dec 08 |
jari |
267 |
{{{ |
854 |
01 Dec 08 |
jari |
$ ./configure --enable-state=base1 --with-basedir=BASEDIR |
854 |
01 Dec 08 |
jari |
269 |
}}} |
854 |
01 Dec 08 |
jari |
where <BASEDIR> is the absolute path to the root directory of your |
854 |
01 Dec 08 |
jari |
working BASE1 installation, or if you are using the developer kit, |
854 |
01 Dec 08 |
jari |
the absolute path to the bogus_base directory created above: |
854 |
01 Dec 08 |
jari |
`/path/to/wenni/BASE-plugindevkit/bogus-base` |
854 |
01 Dec 08 |
jari |
[[br]] [[br]] |
887 |
05 Dec 08 |
jari |
''Some notes on configure options:'' |
887 |
05 Dec 08 |
jari |
[[br]] [[br]] |
887 |
05 Dec 08 |
jari |
The configure script accepts |
854 |
01 Dec 08 |
jari |
a few options that may be of interest. You generally must provide |
854 |
01 Dec 08 |
jari |
`./configure` with BASE1 location information with |
854 |
01 Dec 08 |
jari |
`--with-basedir=BASEDIR`. This information is used to find BASE1 |
854 |
01 Dec 08 |
jari |
API (program libraries and header files). Header file `basefile.h` |
854 |
01 Dec 08 |
jari |
is expected to reside in `<BASEDIR>/include/cxx/`. `<BASEDIR>` |
854 |
01 Dec 08 |
jari |
must be an absolute path. The plug-in installation directory can |
854 |
01 Dec 08 |
jari |
be changed using `./configure` option |
854 |
01 Dec 08 |
jari |
`with-plugindir=DIR`. Default `DIR` is set to |
823 |
26 Nov 08 |
jari |
`<BASEDIR>/plugins/bin/wenni/`. You may use `with-gsl=DIR` to |
823 |
26 Nov 08 |
jari |
provide information on GSL location. The option `enable-debug` |
823 |
26 Nov 08 |
jari |
turns on debug options on the compilation of binary `nni` |
823 |
26 Nov 08 |
jari |
(e.g. enables assertions). |
69 |
11 Feb 06 |
jari |
290 |
|
823 |
26 Nov 08 |
jari |
3. Now build using |
854 |
01 Dec 08 |
jari |
292 |
{{{ |
854 |
01 Dec 08 |
jari |
$ make |
854 |
01 Dec 08 |
jari |
294 |
}}} |
69 |
11 Feb 06 |
jari |
295 |
|
823 |
26 Nov 08 |
jari |
4. Optionally, run the test programs |
854 |
01 Dec 08 |
jari |
297 |
{{{ |
854 |
01 Dec 08 |
jari |
$ make check |
854 |
01 Dec 08 |
jari |
299 |
}}} |
69 |
11 Feb 06 |
jari |
300 |
|
823 |
26 Nov 08 |
jari |
5. Install files using |
854 |
01 Dec 08 |
jari |
302 |
{{{ |
854 |
01 Dec 08 |
jari |
$ make install-plugin |
854 |
01 Dec 08 |
jari |
304 |
}}} |
853 |
01 Dec 08 |
jari |
Note! `make install` will install in location `${exec_prefix}/bin` |
853 |
01 Dec 08 |
jari |
which maybe something else than the BASE plugin directory. |
853 |
01 Dec 08 |
jari |
307 |
|
854 |
01 Dec 08 |
jari |
6. ''Make BASE1 aware of the plugin.'' Make sure that the settings |
854 |
01 Dec 08 |
jari |
in the plug-in definitions file are set appropriately when |
854 |
01 Dec 08 |
jari |
importing the plug-in definitions file |
854 |
01 Dec 08 |
jari |
(`base/base1/base_plugin_script/plugin_WeNNI.base`) into |
854 |
01 Dec 08 |
jari |
BASE1. More explicitly make sure that the entry in the web GUI: |
854 |
01 Dec 08 |
jari |
'Name of executable' is set according to the wenni.pl install |
854 |
01 Dec 08 |
jari |
location. If you prefer to make the change in the file you should |
854 |
01 Dec 08 |
jari |
manipulate the line starting with `execName`. |
854 |
01 Dec 08 |
jari |
[[br]] [[br]] |
854 |
01 Dec 08 |
jari |
If you want use other than the default fields for intensity1, |
854 |
01 Dec 08 |
jari |
intensity2, BCh1SD, and BCh2SD, you need to indicate this in the |
854 |
01 Dec 08 |
jari |
WeNNIParams section of the plug-in definition file. Change the 5th |
854 |
01 Dec 08 |
jari |
column of parameters 4 through 7 appropriately, i.e., if the |
854 |
01 Dec 08 |
jari |
standard deviation is defined in another column than the default |
854 |
01 Dec 08 |
jari |
change lines 6 and 7: |
854 |
01 Dec 08 |
jari |
323 |
≈ß©{{{ |
854 |
01 Dec 08 |
jari |
6 h BCh1SD 30 _xc_BCh1SD 0 |
854 |
01 Dec 08 |
jari |
7 h BCh2SD 30 _xc_BCh2SD 0 |
854 |
01 Dec 08 |
jari |
326 |
}}} |
69 |
11 Feb 06 |
jari |
327 |
|
69 |
11 Feb 06 |
jari |
328 |
|
86 |
04 Apr 06 |
jari |
329 |
|
823 |
26 Nov 08 |
jari |
= Stand alone mode = |
86 |
04 Apr 06 |
jari |
331 |
|
823 |
26 Nov 08 |
jari |
The core WeNNI algorithms are implemented in C++ whereas the test |
823 |
26 Nov 08 |
jari |
script is written in Perl. |
86 |
04 Apr 06 |
jari |
334 |
|
844 |
01 Dec 08 |
jari |
== Short instructions == |
844 |
01 Dec 08 |
jari |
336 |
|
844 |
01 Dec 08 |
jari |
It can be this easy: |
844 |
01 Dec 08 |
jari |
338 |
|
844 |
01 Dec 08 |
jari |
1. Download and unpack WeNNI and `cd` to the root directory of the |
844 |
01 Dec 08 |
jari |
distribution. |
844 |
01 Dec 08 |
jari |
341 |
|
844 |
01 Dec 08 |
jari |
2. Do |
854 |
01 Dec 08 |
jari |
343 |
{{{ |
854 |
01 Dec 08 |
jari |
$ ./configure --enable-state=stand-alone |
854 |
01 Dec 08 |
jari |
$ make |
854 |
01 Dec 08 |
jari |
$ make check |
854 |
01 Dec 08 |
jari |
$ make install |
854 |
01 Dec 08 |
jari |
348 |
}}} |
844 |
01 Dec 08 |
jari |
349 |
|
823 |
26 Nov 08 |
jari |
== Pre-requisite == |
89 |
04 Apr 06 |
jari |
351 |
|
823 |
26 Nov 08 |
jari |
Optionally, for testing, Perl (http://www.cpan.org/). The test |
823 |
26 Nov 08 |
jari |
programs can be run manually, see README for details. |
69 |
11 Feb 06 |
jari |
354 |
|
823 |
26 Nov 08 |
jari |
== Building and installing WeNNI == |
69 |
11 Feb 06 |
jari |
356 |
|
823 |
26 Nov 08 |
jari |
1. Download and unpack WeNNI and `cd` to the root directory of the |
823 |
26 Nov 08 |
jari |
distribution. |
89 |
04 Apr 06 |
jari |
359 |
|
823 |
26 Nov 08 |
jari |
2. If you haven't access to a BASE installation or prefer to use the |
823 |
26 Nov 08 |
jari |
standard compilation components, run the configure script with |
854 |
01 Dec 08 |
jari |
362 |
{{{ |
854 |
01 Dec 08 |
jari |
$ ./configure --enable-state=stand-alone |
854 |
01 Dec 08 |
jari |
364 |
}}} |
887 |
05 Dec 08 |
jari |
''Some notes on configure options:'' |
887 |
05 Dec 08 |
jari |
[[br]] [[br]] |
887 |
05 Dec 08 |
jari |
Do `./configure --help` for |
854 |
01 Dec 08 |
jari |
details in available options. You may use `with-gsl=DIR` to |
854 |
01 Dec 08 |
jari |
provide information on GSL location. The option `enable-debug` |
854 |
01 Dec 08 |
jari |
turns on debug options on the compilation of binary `nni` |
854 |
01 Dec 08 |
jari |
(e.g. enables assertions). |
665 |
16 Apr 08 |
jari |
372 |
|
823 |
26 Nov 08 |
jari |
3. Now build using |
854 |
01 Dec 08 |
jari |
374 |
{{{ |
854 |
01 Dec 08 |
jari |
$ make |
854 |
01 Dec 08 |
jari |
376 |
}}} |
823 |
26 Nov 08 |
jari |
If the package was successfully compiled two binaries are created; |
823 |
26 Nov 08 |
jari |
`NNIFileConverter` and `nni`. |
823 |
26 Nov 08 |
jari |
379 |
|
823 |
26 Nov 08 |
jari |
4. Optionally, run the test programs |
854 |
01 Dec 08 |
jari |
381 |
{{{ |
854 |
01 Dec 08 |
jari |
$ make check |
854 |
01 Dec 08 |
jari |
383 |
}}} |
823 |
26 Nov 08 |
jari |
384 |
|
823 |
26 Nov 08 |
jari |
5. Install with |
854 |
01 Dec 08 |
jari |
386 |
{{{ |
854 |
01 Dec 08 |
jari |
$ make install |
854 |
01 Dec 08 |
jari |
388 |
}}} |
854 |
01 Dec 08 |
jari |
Note! `make install-plugin` will do the same thing as `make install`. |
823 |
26 Nov 08 |
jari |
390 |
|
823 |
26 Nov 08 |
jari |
391 |
|
854 |
01 Dec 08 |
jari |
= Test program fails = |
823 |
26 Nov 08 |
jari |
393 |
|
854 |
01 Dec 08 |
jari |
The numerical checks are very restrictive, if 'make check' fails this |
823 |
26 Nov 08 |
jari |
may be due to rounding errors. You can loosen the error bound in the |
823 |
26 Nov 08 |
jari |
tests by changing the default value in test/wenni_test.cc. Search for: |
823 |
26 Nov 08 |
jari |
397 |
{{{ |
823 |
26 Nov 08 |
jari |
bool compare(const std::string&, const std::string&, double error_bound=1e-20); |
823 |
26 Nov 08 |
jari |
399 |
}}} |