1 |
tdb |
1.6 |
i-scream Server README |
2 |
|
|
====================== |
3 |
tdb |
1.1 |
|
4 |
tdb |
1.10 |
ANT build vs Make build |
5 |
|
|
----------------------- |
6 |
|
|
|
7 |
tdb |
1.11 |
** We have revamped the Makefile, but not the ANT build ** |
8 |
|
|
** So please use the Makefile for now ** |
9 |
|
|
|
10 |
tdb |
1.10 |
There are now two methods of compiling the server distribution. The existing |
11 |
|
|
Makefile method is still supported, but is of course limited in the OS's on |
12 |
|
|
which it can be run. The preffered method will be an XML based build script |
13 |
|
|
using ANT (http://jakarta.apache.org/ant) which will run on any platform. |
14 |
|
|
However, at this stage the ANT scripts are not completely finished and may |
15 |
|
|
have some odd behaviour. |
16 |
|
|
|
17 |
|
|
We envisage both the Makefile and ANT setups being maintained for some time, |
18 |
|
|
giving the developer a choice. This document still outlines the Makefile |
19 |
|
|
method of compiling, and will do so until such a point as the ANT scripts |
20 |
|
|
are deemed reliable. If, however, you wish to give the ant script a whirl, |
21 |
|
|
try the following after setting up ANT (see the ANT website for details); |
22 |
|
|
|
23 |
|
|
ant help |
24 |
|
|
|
25 |
tdb |
1.6 |
Compiling |
26 |
|
|
--------- |
27 |
|
|
|
28 |
|
|
The server can now easily be compiled without worrying about setting up any |
29 |
|
|
of the CLASSPATH's, or setting the path to JacORB. It's all self contained. |
30 |
|
|
|
31 |
|
|
Typical sequence to compile; |
32 |
|
|
|
33 |
|
|
./configure |
34 |
|
|
make build |
35 |
|
|
make install prefix=/some/path |
36 |
|
|
make clean |
37 |
|
|
|
38 |
|
|
In more detail, the first line ensures that the required libraries are |
39 |
|
|
available, and sets the Makefiles up so they know where everything is. |
40 |
|
|
The second line compiles all of the code and creates a JAR file in the |
41 |
|
|
build directory. |
42 |
|
|
The install line installs the server and libraries to a given location, |
43 |
|
|
along with the configuration files. |
44 |
|
|
Finally, the last line cleans up. |
45 |
|
|
|
46 |
|
|
Running |
47 |
|
|
------- |
48 |
|
|
|
49 |
|
|
It is recommended that the components are started up in the following order. |
50 |
|
|
|
51 |
|
|
(This can be on multiple hosts if required, as long as the order is correct). |
52 |
tdb |
1.1 |
|
53 |
tdb |
1.4 |
Core |
54 |
|
|
ClientInterfaceMain |
55 |
tdb |
1.6 |
DBInterface |
56 |
tdb |
1.4 |
FilterManager |
57 |
tdb |
1.6 |
RootFilter |
58 |
tdb |
1.4 |
FilterMain |
59 |
tdb |
1.9 |
Client |
60 |
tdb |
1.1 |
|
61 |
tdb |
1.6 |
It is not necessary to start both the ClientInterfaceMain and DBInterface, |
62 |
|
|
the server will handle only one or both. Multiple Filter's can be started |
63 |
|
|
as required. |
64 |
tdb |
1.1 |
|
65 |
tdb |
1.4 |
These are all loaded through the ComponentManager. More details on how to |
66 |
|
|
operate this will be provided later on. Typing "make run" will make an |
67 |
|
|
attempt to load it up. |
68 |
tdb |
1.1 |
|
69 |
tdb |
1.6 |
Check build/etc/default.properties to set the startup list and order. |
70 |
|
|
|
71 |
tdb |
1.4 |
nb. You will need to ensure that the relevant libraries are in the |
72 |
|
|
build/lib directory. See the README in there for details. |
73 |
tdb |
1.5 |
|
74 |
|
|
Makefile |
75 |
|
|
======== |
76 |
|
|
The following targets are available; |
77 |
|
|
|
78 |
|
|
build |
79 |
|
|
|
80 |
|
|
Compile the entire server package, include the IDL file. Generates the |
81 |
|
|
JAR file for the final package. |
82 |
|
|
|
83 |
|
|
run |
84 |
|
|
|
85 |
|
|
Run's the server from the JAR file in /build. |
86 |
|
|
|
87 |
|
|
clean |
88 |
|
|
|
89 |
|
|
Cleans all compiled code, and javadoc pages. |
90 |
|
|
|
91 |
|
|
distclean |
92 |
|
|
|
93 |
|
|
Also cleans files left by configure, including the libraries. |
94 |
|
|
|
95 |
|
|
install |
96 |
|
|
|
97 |
|
|
Installs the server to a given directory. Also takes a prefix; |
98 |
|
|
make install prefix = /usr/i-scream |
99 |
|
|
|
100 |
tdb |
1.11 |
dist |
101 |
|
|
Builds a full distribution of the server. |
102 |
|
|
make dist ver = 1.0 |
103 |
|
|
Default ver is HEAD. |
104 |
|
|
|
105 |
|
|
dist-bin |
106 |
|
|
Builds a binary distribution of the server. |
107 |
|
|
make dist ver = 1.0 |
108 |
|
|
Default ver is HEAD. |
109 |
tdb |
1.5 |
|
110 |
|
|
javadoc |
111 |
|
|
|
112 |
|
|
Builds all the javadoc pages in the `doc' directory. |
113 |
tdb |
1.7 |
|
114 |
|
|
buildutil |
115 |
|
|
|
116 |
tdb |
1.8 |
(it is recommended you run a "make clean" first) |
117 |
tdb |
1.7 |
Builds a seperate JAR file, in `build' called `iscream-util.jar'. |
118 |
|
|
This file contains just the uk.ac.ukc.iscream.util package for |
119 |
|
|
use in other parts of the system, such as the clients. |
120 |
tdb |
1.9 |
|
121 |
|
|
createtable |
122 |
|
|
|
123 |
|
|
Creates the ipacket table in the mySQL database. This is required for |
124 |
|
|
the database side of the server. |
125 |
|
|
|
126 |
|
|
droptable |
127 |
|
|
|
128 |
|
|
Drops an ipacket table from the mySQL database if one exists. |