source: trunk/gsdl3/README.txt@ 10195

Last change on this file since 10195 was 10195, checked in by kjdon, 19 years ago

tried to separate out all cvs commands, so you can do all the cvs stuff outside of ant, and have ant do no cvs at all

  • Property svn:keywords set to Author Date Id Revision
File size: 11.4 KB
Line 
1Greenstone 3 (GSDL3)
2Copyright (C) 2003 New Zealand Digital Libraries, University Of Waikato
3GSDL3 comes with ABSOLUTELY NO WARRANTY; for details see LICENSE.txt
4This is free software, and you are welcome to redistribute it
5
6Installing Greenstone from a binary distribution (Linux):
7---------------------------------------------------------
8
9Download the gsdl3-x.xx-linux executable file, and run it. Follow the instructions given.
10
11Installing Greenstone from a binary distribution (Windows):
12-----------------------------------------------------------
13
14Download the gsdl3-x.xx-win32.exe executable file, and double click on it.
15Follow the instructions given.
16
17
18Installing Greenstone from a CVS checkout (Linux and Windows):
19--------------------------------------------------------------
20
21Checkout the code:
22
23cvs -d :pserver:[email protected]:2402/usr/local/global-cvs/gsdl-src co gsdl3
24
25Build and install:
26
27Greenstone is built and installed using Ant (Apache's Java based build tool,
28http://ant.apache.org). You will need a Java Development
29Environment (1.4 or higher), and Ant installed to use Greenstone. You can download Ant from http://ant.apache.org/bindownload.cgi. Set the environment variable JAVA_HOME to be the root of your Java installation. We recommend Sun's Java. Greenstone 3 has not been tested with other types of Java.
30
31In the gsdl3 directory, you can run 'ant' which will give you a help message.
32Running 'ant -projecthelp' gives a list of the targets that you can run - these
33do various things like compile the source code, startup the server etc.
34
35For a first time install, run 'ant prepare install'.
36
37The file build.properties contains various parameters that can be set by the user. Please check these settings before running the install.
38
39Greenstone uses the Tomcat servlet container. If you already have Tomcat running, you can set the tomcat.installed.path property to the base directory of your Tomcat installation, and Greenstone will not download its own Tomcat.
40It is intended that the same thing will be available for mysql, but this has not been implemented yet.
41
42Greenstone 3 uses some parts of Greenstone 2 for collection building using the Librarian Interface. It downloads the relevant parts during install. If you have Greenstone 2 already installed, please set the gsdl2.installed.path property to be the root of your Greenstone 2 installation. Greenstone 3 will then use this installation rather than downloading the extra Greenstone 2 bits. If you do not want to use Greenstone 2 style collection building at all, set the gsdl2.installed.path to any non-empty string.
43
44 The prepare target will ask you if you accept the properties before starting.
45To suppress this prompt, use the -Dproperties.accepted=yes flag. E.g.
46ant -Dproperties.accepted=yes prepare install
47
48To log the output in build.log, run
49ant -Dproperties.accepted=yes -logfile build.log prepare install
50
51The prepare target will download additional code, so you need to be online to run it. install can be run offline.
52
53Under Linux, Java and C/C++ compilation is carried out. For windows, since Visual Studio is not a standard component, only Java compilation is carried out. Pre-compiled binaries are provided for the C/C++ components (packages and Greenstone 2 style building). If you have Visual Studio installed (version 6), you can run the compile-windows-c++ targets to compile the code locally. (Don't forget to setup the Visual Studio environment first, by running, e.g. C:/Program Files/Microsoft Visual Studio/VC98/Bin/VCVARS32.BAT or equivalent.)
54
55Common install/update targets.
56-------------------------------
571. Install for the first time:
58cvs co gsdl3
59cd gsdl3
60ant prepare install
61
622. Install for the first time, offline:
63[online]
64cvs co gsdl3
65cd gsdl3
66ant prepare
67[offline]
68ant install
69
703. Install for the first time, cvs done outside of Ant (if you have problems running cvs commands from Ant):
71cvs co [-P] gsdl3
72cd gsdl3
73cvs update -P (run this if you haven't done the checkout with the -P option)
74cd packages
75cvs co mgpp
76cd ..
77[if you want greenstone 2 building:
78cvs co -P gli
79cvs co -P gs2build
80]
81[if you are on windows
82cvs co winbin
83]
84ant -Dnocvs.mode=yes prepare install (prepare needs to be online, install can be done offline)
85
864. Updating your Greenstone installation from cvs (and reconfigure/recompile):
87cd gsdl3
88ant update
89
905. Updating your Greenstone installation, offline:
91cd gsdl3
92[online]
93ant cvsupdate
94[offline]
95ant -Dnocvs.mode=yes update
96
976. Updating your Greenstone installation, cvs outside of Ant:
98cd gsdl3
99cvs update -l
100cvs update -dP bin comms docs lib resources src winutil packages
101cd web (or the path-to-tomcat/webapps/gsdl3 if have installed greenstone as a webapp in Tomcat, see Using External Tomcat section)
102cvs update -dP
103cd gsdl3
104[ if you have greenstone 2 building:
105cvs update -dP gli
106cvs checkout -P gs2build
107Note that the gs2build one uses checkout not update.
108]
109ant -Dnocvs.mode=yes update
110
111The main targets for installation/update are:
112configure, configure-c++, clean, compile.
113Any sub targets can be run by themselves. Run 'ant -projecthelp' for a list of public targets, otherwise you can look at the build.xml file to see which targets depend on other ones.
114
115If you run your install using an external Tomcat, the SOAP web service for localsite (used by the gateway servlet) will not be loaded. You need to start up Tomcat, then run 'ant soap-deploy-site' and accept the defaults for sitename and siteuri (both localsite). If you want to use the gateway servlet without restarting Tomcat, you will need to reload the site information. Visit the URL localhost:8080/gsdl3/gateway?a=s&sa=c (substituting your server name and port number if necessary). See the user guide for more information about run time reconfiguration.
116
117Running Greenstone:
118-------------------
119
120To startup the local servers, run 'ant start'. 'ant restart' and 'ant stop' restarts and shuts down the servers. To start or stop just Tomcat or MYSQL, use the start-tomcat, start-mysql, stop-tomcat, stop-mysql targets.
121These will only start/stop local servers (ones installed by Greenstone). You will need to manually start/stop external Tomcat/mysql.
122
123On Windows, if you have installed a binary version, you can also start Greenstone by selecting Greenstone 3 Digital Library from the Start menu.
124
125Greenstone will be available in a browser at "http://localhost:8080/gsdl3".
126
127You can change the port number by changing the tomcat.port property in build.properties, then running 'ant configure'.
128
129
130Using SOAP (Linux and Windows):
131-------------------------------
132
133Greenstone comes with Apache Axis installed as a webapp in Tomcat. A SOAP server on localsite is deployed during installation. You should be able to see all localsite's collections through the gateway servlet.
134
135To set up a SOAP server on a new site, run
136ant soap-deploy-site
137This will prompt you for the sitename (the directory name), and the site uri - this should be a unique identifier for the site's web service.
138
139For a non-interactive version, run
140ant -Daxis.sitename=xxx -Daxis.siteuri=yyy soap-deploy-site
141
142Building Collections:
143-----------------------
144
145You can build collections using either Greenstone 2 style building, or native Greenstone 3 style.
146
147Greenstone 2:
148
149You need to have Perl installed and on your PATH.
150run 'ant gli", or cd to gsdl3/gli and run gli4gs3.sh/bat. This is a graphical tool for building collections.
151
152Greenstone 3:
153
154In the gsdl3 directory, run: 'source gs3-setup.sh' (linux) or 'gs3-setup' (windows).
155To create a new collection, run 'gs3-mkcol.sh/bat <sitename> <collname>'
156Put documents in the import directory (gsdl3/web/sites/<sitename>/collect/<collname>/import), edit the collection configuration file (gsdl3/web/sites/<sitename>/collect/<collname>/etc/collectionConfig.xml), and run 'gs3-build.sh <sitename> <collname>'
157Rename the building directory to index (in gsdl3/web/sites/<sitename>/collect/<collname>) and reload the collection in Tomcat (?a=s&sa=a&st=collection&sn=<collname>), or restart Tomcat.
158
159See the manual for more details about both styles of collection building.
160
161Other Notes:
162---------------
163
164See gsdl3/docs/manual/manual.pdf for more details about the software and installation etc.
165
166Under Linux, Tomcat logs output in gsdl3/comms/jakarta/tomcat/logs/catalina.out.
167
168To prevent Tomcat showing directory listings, edit the gsdl3/comms/jakarta/tomcat/conf/web.xml file and set the value of the "listings" servlet parameter to false.
169
170ant can't seem to do cvs using authenticated cvs on windows:
171there were some classes missing - www.ibiblio.org/maven/jsch/jars/jsch-0.1.17.jar
172many ssh processes seemed to be started up - all waiting in the background for password??
173So should only use anonymous cvs.
174
175Using External Tomcat:
176------------------------
177
178If you want to use an existing Tomcat, set the path to its base directory
179in build.properties (tomcat.installed.path). Then run 'ant prepare install'. If you have already done an install (e.g. using a local Tomcat), you don't need to do it again.
180
181 You will need to modify the Tomcat setup slightly.
182
1831. Tell Tomcat about the Greenstone web app. There are two ways to do this.
184
185A. Add in the Greenstone context to Tomcat's server.xml.
186
187<Context path="/gsdl3" docBase="path-to-gsdl3/web" debug="1"
188reloadable="true"><Resources allowLinking='true'/></Context>
189
190B. Alternatively, you can move (and rename) the gsdl3/web directory to tomcat/webapps/gsdl3 (i.e. the resulting directories will be like
191tomcat/webapps/gsdl3/WEB-INF, no web directory). This should be done after running the initial 'ant prepare install'.
192You will need to set the web.home property in the build.properties file
193i.e.
194web.home=${tomcat.installed.path}/webapps/gsdl3
195And then run 'ant configure' to reset gsdl3home.
196
1972. Set up the JNI libraries and Java wrappers.
198JNI libraries and their Java wrappers cannot go into the web app. The libraries need to be loaded by the same class loader as their wrappers. The libraries need to be in java.library.path, and I think get loaded by the system class loader.
199The wrappers need to be loaded by this too.
200To get the native libraries loaded, the directory they are in needs to be in the PATH variable (Windows) or the LD_LIBRARY_PATH variable (linux).
201
202These JNI bits are located by default in the lib/jni directory. There are two ways to get them into Tomcat:
203A: Keep all the Greenstone stuff inside the gsdl3 directory, and just modify the environment that Tomcat runs in
204
205Set LD_LIBRARY_PATH (linux) or PATH (windows) to include the gsdl3/lib/jni directory.
206Add all the jar files in gsdl3/lib/jni directory to the CLASSPATH, then edit tomcats setclasspath.sh/bat to use the system CLASSPATH.
207(in setclasspath.bat, change
208set CLASSPATH=%JAVA_HOME%\lib\tools.jar
209to
210set CLASSPATH=%JAVA_HOME%\lib\tools.jar;%CLASSPATH%
211
212in setclasspath.sh, change
213# Set standard CLASSPATH
214if [ "$1" = "debug" -o "$1" = "javac" ] ; then
215 CLASSPATH="$JAVA_HOME"/lib/tools.jar
216fi
217
218to
219# Set standard CLASSPATH
220if [ "$1" = "debug" -o "$1" = "javac" ] ; then
221 CLASSPATH="$JAVA_HOME"/lib/tools.jar:"CLASSPATH"
222fi
223
224
225B: Copy the files into Tomcat installation:
226Move the gsdl3/lib/jni jar files into tomcat's shared/lib directory.
227Move the gsdl3/lib/jni library files (.so for linux, .dll for windows) into shared/classes, and set LD_LIBARARY_PATH (linux) or PATH (windows) to include this directory.
228This has the advantage that you can use this for other webapps without modifying the Tomcat environment.
229
230
231Once all these changes have been made, you will need to restart the Tomcat server for them to take effect.
232
233Notes for Mac OS
234------------------
235
236Set JAVA_HOME to be /Library/Java/Home
Note: See TracBrowser for help on using the repository browser.