Reference documentation: [http://dspace.org/technology/system-docs/install.html]
Notes:
* The following step-by-step howto has not been tested thoroughly. If you find any problems, please refer the reference documentation above.
* Most of the installation steps are performed in shell prompt (bash).
* Please help to make corrections. (English is not my primary language)
* This line will be deleted if I finish writing this howto and testing the DSpace system. I write this howto while I am installing DSpace on my Mandriva system. If you subscribe to DSpace-Tech mailing list (dspace-tech@lists.sourceforge.net), questions, comments, corrections, etc. to the list will be appreciated.
It is assumed that
* Linux Mandriva 2007 is already installed. See: [http://www.howtoforge.com/perfect_setup_mandriva_2007]
* The system has been connected to RPM repository (eg. via FTP, by typing at prompt: urpmi.addmedia ..).
* You are familiar with bash sell and text editor vi.
Panel | ||||||
---|---|---|---|---|---|---|
Contents
|
Install Java Package in Mandriva
In Mandriva 2007.0, you can try Java SE Development Kit from Sun Microsystems, or a 'relatively' compatible Java package in Mandriva 2007.0. Below, the step-by-step howto for both are described. If found problems with the first, just try the second.
...
Type the following:
Code Block |
---|
urpmi java-devel
|
that results in the following output:
Code Block |
---|
One of the following packages is needed: 1\- java-1.4.2-gcj-compat-devel-1.4.2.0-40.103.1mdv2007.0.i586 : JPackage development scripts for GCJscriptsforGCJ (to install) 2\- kaffe-devel-1.1.8-0.20060723.1mdv2007.0.i586 : Development package with static libs and headers for kaffe Developmentpackagewithstaticlibs and headersforkaffe (to install) What is your choice? (1-2) |
Press '1' that will result in the next choices:
Code Block |
---|
One of the following packages is needed: 1\- xml-commons-resolver10-1.3.03-5.1mdv2007.0.i586 : XmlResolver 1.0 utility from xml-commons (to install) 2\- xml-commons-resolver11-1.3.03-5.1mdv2007.0.i586 : XmlResolver 1.1 utility from xml-commons (to install) 3\- xml-commons-resolver12-1.3.03-5.1mdv2007.0.i586 : XmlResolver 1.2 from xml-commons (to install) What is your choice? (1-3) |
Press '3' that will present the following choices:
Code Block |
---|
One of the following packages is needed: 1\- eclipse-ecj-3.2.0-12.3mdv2007.0.i586 : Eclipse Compiler for Java EclipseCompilerforJava (to install) 2\- ecj-bootstrap-3.2.0-2mdv2007.0.i586 : Eclipse Compiler for JavaEclipseCompilerforJava (to install) What is your choice? (1-2) |
Press '1'.
Code Block |
---|
To satisfy dependencies, the following packages are going to be installed: antlr-2.7.6-4.1mdv2007.0.i586 bouncycastle-1.33-3mdv2007.0.i586 bouncycastle-jdk1.4-1.33-3mdv2007.0.i586 classpath-0.92-3mdv2007.0.i586 classpathx-jaf-1.1.1-1mdv2007.0.i586 classpathx-mail-1.1.1-3mdv2007.0.i586 classpathx-mail-monolithic-1.1.1-3mdv2007.0.i586 eclipse-ecj-3.2.0-12.3mdv2007.0.i586 gcc-java-4.1.1-3mdk.i586 gcj-tools-4.1.1-3mdk.i586 gjdoc-0.7.7-10mdv2007.0.i586 jamvm-1.4.3-3mdv2007.0.i586 java-1.4.2-gcj-compat-1.4.2.0-40.103.1mdv2007.0.i586 java-1.4.2-gcj-compat-devel-1.4.2.0-40.103.1mdv2007.0.i586 jpackage-utils-1.7.0-1.4mdv2007.0.noarch libgcj7-4.1.1-3mdk.i586 libgcj7-base-4.1.1-3mdk.i586 libgcj7-devel-4.1.1-3mdk.i586 xalan-j2-2.7.0-2.1mdv2007.0.i586 xerces-j2-2.8.0-1mdv2007.0.i586 xml-commons-1.3.03-5.1mdv2007.0.i586 xml-commons-resolver12-1.3.03-5.1mdv2007.0.i586 Proceed with the installation of the 22 packages? (115 MB) (Y/n) |
...
As an alternative of using Java package that is bundled with Mandriva 2007.0 Free Edition, you can download the Java SE Development Kit (JDK) from [http://java.sun.com/javase/downloads/index.jsp]. As stated in the reference documentation, you do not need Java EE (Enterprise Edition). You do not need Java SE with NetBeans, either; just the minimal JDK. As of this writing, the current version is Java SE Development Kit 5.0 Update 9, but in this howto we use JDK 5.0 Update 7, the RPM version (jdk-1_5_0_07-linux-i586-rpm.bin).
After putting the JDK file in the current directory, do the followings:
Code Block |
---|
chmod \+x jdk-1_5_0_07-linux-i586-rpm.bin ./jdk-1_5_0_07-linux-i586-rpm.bin #depends on the JDK version |
The License Agreement will be presented to you. Just press space-bar until you are asked to agree the license terms. Type 'yes' and press Enter. The RPM file will be created, eg. jdk-1_5_0_07-linux-i586.rpm. Then, type the following and then press Enter:
Code Block |
---|
rpm \-ivh jdk-1_5_0_07-linux-i586.rpm |
If you want to know the files that have been installed on your system, type:
Code Block |
---|
rpm \-ql jdk-1.5.0_07-fcs #depends on the JDK version; see the message after the command: rpm \-ivh .. |
At [http://www.linuxquestions.org/questions/showthread.php?t=214559], someone said that "it's worth installing Sun's J2EE enterprise java package when using tomcat. Just the normal java JRE will not work with Tomcat, because it uses J2EE libraries (jars)". He is right that 'normal java JRE will not work', but I think JDK is enough, so I decided to use Java package above (Java SE SDK). However, if you find problems with Sun JDK above, try to install Java EE SDK instead. It can be downloaded from [http://java.sun.com/javaee/downloads/index.jsp], eg. java_ee_sdk-5-linux.bin.
To install Sun Java EE SDK, follow these steps:
Code Block |
---|
urpmi libstdc++5 ./java_ee_sdk-5-linux.bin |
...
If you installed both Java packages above, you can switch from one package to another by setting environment variable JAVA_HOME. Just edit /etc/tomcat5/tomcat5.conf after Tomcat5 installation below. If you follow carefully all the steps above, then to make Tomcat use GNU Java, put this line into tomcat5.conf:
Code Block |
---|
JAVA_HOME="/usr/lib/jvm/java"
|
Alternatively, to make Tomcat use Sun Java, put this line into tomcat5.conf:
Code Block |
---|
JAVA_HOME="/usr/java/jdk"
|
and replace all java-related program in /usr/bin with the ones from Sun Java. You can do this by moving these files: jar, jarsigner, java, javac, javadoc, javah, javap, java-rmi.cgi, javaws, from /usr/bin/ to another directory, and put symbolic links to Sun Java programs in /usr/bin.
Code Block |
---|
cd /usr/bin mv jar /another/directory/ mv jarsigner /another/directory/ mv java /another/directory/ .. and so on. ln \-s /usr/java/jdk1.5.0_07/bin/jar ln \-s /usr/java/jdk1.5.0_07/bin/jarsigner ln \-s /usr/java/jdk1.5.0_07/bin/java .. and so on. |
...
Type the followings:
Code Block |
---|
urpmi postgresql urpmi postgresql-server urpmi ant urpmi xml-commons-apis urpmi tomcat5 |
After the last line (urpmi tomcat5), the console will show the following lines:
Code Block |
---|
To satisfy dependencies, the following packages are going to be installed:
axis-1.2.1-2.2.1mdv2007.0.i586
bcel-5.1-6.1mdv2007.0.i586
jakarta-commons-beanutils-1.7.0-4.2mdv2007.0.i586
jakarta-commons-collections-3.2-1.1mdv2007.0.i586
jakarta-commons-daemon-1.0.1-4.1mdv2007.0.i586
jakarta-commons-dbcp-1.2.1-5.1mdv2007.0.i586
jakarta-commons-digester-1.7-4.1mdv2007.0.i586
jakarta-commons-discovery-0.3-2.1mdv2007.0.i586
jakarta-commons-el-1.0-6.2mdv2007.0.i586
jakarta-commons-fileupload-1.0-5.1mdv2007.0.i586
jakarta-commons-httpclient-3.0.1-1mdv2007.0.i586
jakarta-commons-launcher-1.1-1.1mdv2007.0.i586
jakarta-commons-logging-1.1-3.2mdv2007.0.i586
jakarta-commons-modeler-1.1-7.1mdv2007.0.i586
jakarta-commons-pool-1.3-2.1mdv2007.0.i586
log4j-1.2.13-2.1mdv2007.0.i586
mx4j-3.0.1-4.1mdv2007.0.i586
regexp-1.4-1.2mdv2007.0.i586
tomcat5-5.5.17-3.1.2mdv2007.0.i586
tomcat5-common-lib-5.5.17-3.1.2mdv2007.0.i586
tomcat5-jasper-5.5.17-3.1.2mdv2007.0.i586
tomcat5-jsp-2.0-api-5.5.17-3.1.2mdv2007.0.i586
tomcat5-server-lib-5.5.17-3.1.2mdv2007.0.i586
tomcat5-servlet-2.4-api-5.5.17-3.1.2mdv2007.0.i586
wsdl4j-1.5.2-3.1mdv2007.0.i586
Proceed with the installation of the 25 packages? (36 MB) (Y/n)
|
...
DSpace will run as a web application at Tomcat, so we have to install tomcat5-webapps.
Code Block |
---|
urpmi tomcat5-webapps
|
and then press 'Y' and Enter after the following message:
Code Block |
---|
To satisfy dependencies, the following packages are going to be installed:
jakarta-taglibs-standard-1.1.2-2mdv2007.0.i586
tomcat5-webapps-5.5.17-3.1.2mdv2007.0.i586
Proceed with the installation of the 2 packages? (9 MB) (Y/n)
|
Next,
Code Block |
---|
urpmi tomcat5-admin
To satisfy dependencies, the following packages are going to be installed:
jakarta-commons-validator-1.3.0-1.1mdv2007.0.i586
jakarta-oro-2.0.8-2.3mdv2007.0.i586
rhino-1.6-0.r2.2.1mdv2007.0.i586
struts-1.2.9-3mdv2007.0.i586
tomcat5-admin-webapps-5.5.17-3.1.2mdv2007.0.i586
Proceed with the installation of the 5 packages? (13 MB) (Y/n)
|
...
To ensure that Tomcat has enough memory to run DSpace and uses UTF-8 as its default file encoding for international character support, uncomment and edit 'JAVA_OPTS' environment variable in Tomcat startup script /etc/tomcat5/tomcat5.conf:
Code Block |
---|
vi /etc/tomcat5/tomcat5.conf
|
and then write the following line:
Code Block |
---|
JAVA_OPTS="-Xmx512M \-Xms64M \-Dfile.encoding=UTF-8" |
Please note that the option: '-Xmx512M -Xms64M' will only be understood by Sun Java but not by GNU Java. Please see GNU Java documentation to get the same goal.
To alter Tomcat's default configuration to support searching and browsing of multi-byte UTF-8 correctly, add a configuration option to the <Connector> element in /etc/tomcat5/server.xml.
Code Block |
---|
vi /etc/tomcat5/server.xml
|
You will see the following lines in that file:
Code Block |
---|
<Connector port="Threads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" /> |
Just add 'URIEncoding="UTF-8"' before slash:
Code Block |
---|
<Connector port="8080" maxHttpHeaderSize="8192" maxThreads="150" "maxThreads="150"minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8" /> |
Summary of the Environment
Code Block |
---|
\[tomcat\] /usr/share/tomcat5 CATALINA_BASE: /usr/share/tomcat5 CATALINA_HOME: /usr/share/tomcat5 CATALINA_TMPDIR: /usr/share/tomcat5/temp JAVA_HOME: /usr/lib/jvm/java /# or JAVA_HOME: /usr/java/jdk |
Install DSpace
I will write DSpace installation steps here. Visit this page later. However, DSpace installation described in the the reference documentation is clear enough (see the first line of this howto).</html>